Commit | Line | Data |
---|---|---|
914cc63e BH |
1 | # |
2 | # KUnit base configuration | |
3 | # | |
4 | ||
5 | menuconfig KUNIT | |
9fe124bf | 6 | tristate "KUnit - Enable support for unit tests" |
b67abaad | 7 | select GLOB |
914cc63e BH |
8 | help |
9 | Enables support for kernel unit tests (KUnit), a lightweight unit | |
10 | testing and mocking framework for the Linux kernel. These tests are | |
11 | able to be run locally on a developer's workstation without a VM or | |
12 | special hardware when using UML. Can also be used on most other | |
13 | architectures. For more information, please see | |
14 | Documentation/dev-tools/kunit/. | |
d8e2a76b BH |
15 | |
16 | if KUNIT | |
17 | ||
e2219db2 | 18 | config KUNIT_DEBUGFS |
beaed42c AR |
19 | bool "KUnit - Enable /sys/kernel/debug/kunit debugfs representation" if !KUNIT_ALL_TESTS |
20 | default KUNIT_ALL_TESTS | |
e2219db2 AM |
21 | help |
22 | Enable debugfs representation for kunit. Currently this consists | |
23 | of /sys/kernel/debug/kunit/<test_suite>/results files for each | |
24 | test suite, which allow users to see results of the last test suite | |
25 | run that occurred. | |
26 | ||
4b513a02 DG |
27 | config KUNIT_FAULT_TEST |
28 | bool "Enable KUnit tests which print BUG stacktraces" | |
29 | depends on KUNIT_TEST | |
30 | depends on !UML | |
31 | default y | |
32 | help | |
33 | Enables fault handling tests for the KUnit framework. These tests may | |
34 | trigger a kernel BUG(), and the associated stack trace, even when they | |
35 | pass. If this conflicts with your test infrastrcture (or is confusing | |
36 | or annoying), they can be disabled by setting this to N. | |
37 | ||
d8e2a76b | 38 | config KUNIT_TEST |
beaed42c AR |
39 | tristate "KUnit test for KUnit" if !KUNIT_ALL_TESTS |
40 | default KUNIT_ALL_TESTS | |
d8e2a76b BH |
41 | help |
42 | Enables the unit tests for the KUnit test framework. These tests test | |
43 | the KUnit test framework itself; the tests are both written using | |
44 | KUnit and test KUnit. This option should only be enabled for testing | |
45 | purposes by developers interested in testing that KUnit works as | |
46 | expected. | |
47 | ||
48 | config KUNIT_EXAMPLE_TEST | |
beaed42c AR |
49 | tristate "Example test for KUnit" if !KUNIT_ALL_TESTS |
50 | default KUNIT_ALL_TESTS | |
d8e2a76b BH |
51 | help |
52 | Enables an example unit test that illustrates some of the basic | |
53 | features of KUnit. This test only exists to help new users understand | |
54 | what KUnit is and how it is used. Please refer to the example test | |
55 | itself, lib/kunit/example-test.c, for more information. This option | |
56 | is intended for curious hackers who would like to understand how to | |
57 | use KUnit for kernel development. | |
58 | ||
92238b31 AR |
59 | config KUNIT_ALL_TESTS |
60 | tristate "All KUnit tests with satisfied dependencies" | |
61 | help | |
62 | Enables all KUnit tests, if they can be enabled. | |
63 | KUnit tests run during boot and output the results to the debug log | |
64 | in TAP format (http://testanything.org/). Only useful for kernel devs | |
65 | running the KUnit test harness, and not intended for inclusion into a | |
66 | production build. | |
67 | ||
68 | For more information on KUnit and unit tests in general please refer | |
69 | to the KUnit documentation in Documentation/dev-tools/kunit/. | |
70 | ||
71 | If unsure, say N. | |
72 | ||
d20a6ba5 JF |
73 | config KUNIT_DEFAULT_ENABLED |
74 | bool "Default value of kunit.enable" | |
75 | default y | |
76 | help | |
77 | Sets the default value of kunit.enable. If set to N then KUnit | |
78 | tests will not execute unless kunit.enable=1 is passed to the | |
79 | kernel command line. | |
80 | ||
81 | In most cases this should be left as Y. Only if additional opt-in | |
82 | behavior is needed should this be set to N. | |
83 | ||
d8e2a76b | 84 | endif # KUNIT |