linux-xiaomi-chiron/tools/testing/kunit
Daniel Latypov db1679813f kunit: tool: use dataclass instead of collections.namedtuple
namedtuple is a terse way of defining a collection of fields.
However, it does not allow us to annotate the type of these fields.
It also doesn't let us have any sort of inheritance between types.

Since commit df4b0807ca ("kunit: tool: Assert the version
requirement"), kunit.py has asserted that it's running on python >=3.7.

So in that case use a 3.7 feature, dataclasses, to replace these.

Changes in detail:
* Make KunitExecRequest contain all the fields needed for exec_tests
* Use inheritance to dedupe fields
  * also allows us to e.g. pass a KUnitRequest in as a KUnitParseRequest
  * this has changed around the order of some fields
* Use named arguments when constructing all request objects in kunit.py
  * This is to prevent accidentally mixing up fields, etc.

Signed-off-by: Daniel Latypov <dlatypov@google.com>
Reviewed-by: Brendan Higgins <brendanhiggins@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
2021-12-15 11:50:41 -07:00
..
configs kunit: Remove the unused all_tests.config 2021-06-23 17:49:41 -06:00
qemu_configs kunit: tool: add support for QEMU 2021-06-11 16:10:23 -06:00
test_data kunit: tool: Report an error if any test has no subtests 2021-12-13 13:36:15 -07:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
kunit.py kunit: tool: use dataclass instead of collections.namedtuple 2021-12-15 11:50:41 -07:00
kunit_config.py kunit: tool: move Kconfig read_from_file/parse_from_string to package-level 2021-12-13 13:53:30 -07:00
kunit_json.py kunit: tool: fix --json output for skipped tests 2021-12-13 13:33:30 -07:00
kunit_kernel.py kunit: tool: reconfigure when the used kunitconfig changes 2021-12-13 13:59:03 -07:00
kunit_parser.py kunit: tool: print parsed test results fully incrementally 2021-12-13 13:37:38 -07:00
kunit_tool_test.py kunit: tool: use dataclass instead of collections.namedtuple 2021-12-15 11:50:41 -07:00
qemu_config.py kunit: tool: add support for QEMU 2021-06-11 16:10:23 -06:00
run_checks.py kunit: add run_checks.py script to validate kunit changes 2021-12-13 13:35:22 -07:00