[PATCH] Documentation: kunit: Modular tests should not depend on KUNIT=y

Geert Uytterhoeven posted 1 patch 2 years, 9 months ago
Documentation/dev-tools/kunit/start.rst | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
[PATCH] Documentation: kunit: Modular tests should not depend on KUNIT=y
Posted by Geert Uytterhoeven 2 years, 9 months ago
When the documentation was updated for modular tests, the dependency on
"KUNIT=y" was forgotten to be updated, now encouraging people to create
tests that cannot be enabled when the KUNIT framework itself is modular.
Fix this by changing the dependency to "KUNIT".

Document when it is appropriate (and required) to depend on "KUNIT=y".

Fixes: c9ef2d3e3f3b3e56 ("KUnit: Docs: make start.rst example Kconfig follow style.rst")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
 Documentation/dev-tools/kunit/start.rst | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Documentation/dev-tools/kunit/start.rst b/Documentation/dev-tools/kunit/start.rst
index c736613c9b199bff..9619a044093042ce 100644
--- a/Documentation/dev-tools/kunit/start.rst
+++ b/Documentation/dev-tools/kunit/start.rst
@@ -256,9 +256,12 @@ Now we are ready to write the test cases.
 
 	config MISC_EXAMPLE_TEST
 		tristate "Test for my example" if !KUNIT_ALL_TESTS
-		depends on MISC_EXAMPLE && KUNIT=y
+		depends on MISC_EXAMPLE && KUNIT
 		default KUNIT_ALL_TESTS
 
+Note: If your test does not support being built as a loadable module (which is
+discouraged), replace tristate by bool, and depend on KUNIT=y instead of KUNIT.
+
 3. Add the following lines to ``drivers/misc/Makefile``:
 
 .. code-block:: make
-- 
2.34.1
Re: [PATCH] Documentation: kunit: Modular tests should not depend on KUNIT=y
Posted by David Gow 2 years, 9 months ago
On Tue, 2 May 2023 at 18:06, Geert Uytterhoeven <geert+renesas@glider.be> wrote:
>
> When the documentation was updated for modular tests, the dependency on
> "KUNIT=y" was forgotten to be updated, now encouraging people to create
> tests that cannot be enabled when the KUNIT framework itself is modular.
> Fix this by changing the dependency to "KUNIT".
>
> Document when it is appropriate (and required) to depend on "KUNIT=y".
>
> Fixes: c9ef2d3e3f3b3e56 ("KUnit: Docs: make start.rst example Kconfig follow style.rst")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---

Nice catch: we definitely should be recommending that all tests are
buildable as modules if possible.

(I think this is already the case in most of the rest of the
documentation..., but the getting started guide really shouldn't be
teaching bad habits.)

Reviewed-by: David Gow <davidgow@google.com>

Cheers,
-- David


>  Documentation/dev-tools/kunit/start.rst | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/dev-tools/kunit/start.rst b/Documentation/dev-tools/kunit/start.rst
> index c736613c9b199bff..9619a044093042ce 100644
> --- a/Documentation/dev-tools/kunit/start.rst
> +++ b/Documentation/dev-tools/kunit/start.rst
> @@ -256,9 +256,12 @@ Now we are ready to write the test cases.
>
>         config MISC_EXAMPLE_TEST
>                 tristate "Test for my example" if !KUNIT_ALL_TESTS
> -               depends on MISC_EXAMPLE && KUNIT=y
> +               depends on MISC_EXAMPLE && KUNIT
>                 default KUNIT_ALL_TESTS
>
> +Note: If your test does not support being built as a loadable module (which is
> +discouraged), replace tristate by bool, and depend on KUNIT=y instead of KUNIT.
> +
>  3. Add the following lines to ``drivers/misc/Makefile``:
>
>  .. code-block:: make
> --
> 2.34.1
>