[PATCH v2 0/9] TLV integration tests and test/py cleanup
Jonas Rebmann
jre at pengutronix.de
Mon Sep 29 01:03:51 PDT 2025
With TLV signature coming up, we want to test all things TLV more
thoroughly, including "roundtrip" integration tests that include the
bareboxtlv-generator python-script and the tlv barebox-command.
As this is the third test module to make use of the testfs, it seemed
adequate to revisit its implementation.
Avoid integration test logic outside pytest; migrate logic from .github/
and scripts/ into pytest.
Use fixtures for testcase preconditions and migrate existing testdata
preparation from scripts/generate_testfs.sh.
Cleanups here and there.
The ci-container needs to be rebuilt before the TLV tests will succeed
in CI.
Signed-off-by: Jonas Rebmann <jre at pengutronix.de>
---
Changes in v2:
- work around a corner case where a failed network test leads to
unrelated pritinting above the tlv command output (triggered by
accessing the 9pfs)
- move fitimage testdata generation to fixture and drop script
- Enable CMD_TLV for multi_v7 and multi_v8 (required for tlv_command test)
- Skip tlv_command test if CMD_TLV is disabled
- Ensure that pwd is returned to / after dm_verity test even on failure
- Silently skip generating testdata for the fit tests for platforms for
which no files are provided to prevent ci failure on mips and riscv
- minor improvements in style and consistency
- Link to v1: https://lore.barebox.org/barebox/20250926-tlv-integration-v1-0-45dc68b9b602@pengutronix.de
---
Jonas Rebmann (9):
test: when testfs feature is available, always enable it
test: provide testfs via fixture
test: move dm-verity testdata generation to fixture
test: move fitimage testdata generation to fixture and drop script
test: py: test_bootchooser: remove dead code
commands: tlv: clarify error opening tlv
ci: container: install crcmod and cryptography
configs: enable tlv command for multi_v7 and multi_v8
test: py: add TLV integration tests
.github/workflows/test-labgrid-pytest.yml | 13 ----
arch/arm/configs/multi_v7_defconfig | 2 +
arch/arm/configs/multi_v8_defconfig | 2 +
commands/tlv.c | 8 ++-
conftest.py | 14 ++++
scripts/generate_testfs.sh | 77 ---------------------
test/Containerfile | 8 ++-
test/py/test_bootchooser.py | 4 --
test/py/test_dm.py | 59 ++++++++++++++--
test/py/test_fit.py | 46 +++++++++++--
test/py/test_tlv.py | 78 ++++++++++++++++++++++
.../testdata}/multi_v7_defconfig-gzipped.its | 0
.../testdata}/multi_v8_defconfig-gzipped.its | 0
13 files changed, 200 insertions(+), 111 deletions(-)
---
base-commit: 1b817ae40c2ba628ba0ce413564ea77e91a6009b
change-id: 20250926-tlv-integration-945bdd7903d9
Best regards,
--
Jonas Rebmann <jre at pengutronix.de>
More information about the barebox
mailing list