Documentation: kunit: provide guidance for testing many inputs
authorDaniel Latypov <dlatypov@google.com>
Mon, 23 Nov 2020 22:57:59 +0000 (14:57 -0800)
committerShuah Khan <skhan@linuxfoundation.org>
Tue, 1 Dec 2020 22:30:06 +0000 (15:30 -0700)
commit1f0e943df68ab407f523d9f47d96a535686a2293
treeed2c4d133a6f280f7b1ab69ab148e7a078c101b3
parentf3ed003e64fe7faecbe4c34bd2a1f5571a23f05a
Documentation: kunit: provide guidance for testing many inputs

usage.rst goes into a detailed section about faking out classes, but
currently lacks wording about how one might idiomatically test a range
of inputs.

Add a new chapter for "Common Patterns" and group "Isolating behvaior"
and this new section under there.

Give an example of how one might test a hash function via macros/helper
funcs and a table-driven test and very briefly discuss pros and cons.

Also highlight the KUNIT_EXPECT_*_MSG() variants (that aren't mentioned
elsewhere [1]) which are particularly useful in these situations.

It is also criminally underused at the moment, only appearing in 2
tests (both written by people involved in KUnit).

[1] not even on
https://www.kernel.org/doc/html/latest/dev-tools/kunit/api/test.html

Signed-off-by: Daniel Latypov <dlatypov@google.com>
Reviewed-by: Brendan Higgins <brendanhiggins@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Documentation/dev-tools/kunit/usage.rst