mbox series

[v3,0/6] Add Binman code-coverage test to CI

Message ID 20240623175622.1468600-1-sjg@chromium.org
Headers show
Series Add Binman code-coverage test to CI | expand

Message

Simon Glass June 23, 2024, 5:56 p.m. UTC
Binman has 100% code coverage to ensure that future changes and
refactors do not break existing entry types. This is a critical feature,
given that it is relied on to produce images for all sorts of different
SoCs and vendors.

With the NXP additions the 'binman test -T' step was missed, so the
Binman coverage test is currently failing.

This series provides a means to close the testing gap. It cannot be
applied until the tests are added, which should happen before -next is
applied to -master

Changes in v3:
- Drop the PATH modification altogether

Changes in v2:
- Add new patch to fix a few typos in toolchain code
- Add to azure also (oops)
- Add to buildman requirements instead

Simon Glass (6):
  buildman: Add python3-coverage
  buildman: Add python3-pycryptodome
  buildman: Fix a few typos in toolchain code
  buildman: Always use the full path in CROSS_COMPILE
  u_boot_pylib: Use correct coverage tool within venv
  CI: Run code-coverage test for Binman

 .azure-pipelines.yml            |  5 ++-
 .gitlab-ci.yml                  |  4 +-
 tools/buildman/bsettings.py     |  3 ++
 tools/buildman/builder.py       |  5 +--
 tools/buildman/builderthread.py |  4 +-
 tools/buildman/cmdline.py       |  2 -
 tools/buildman/control.py       |  6 +--
 tools/buildman/requirements.txt |  2 +
 tools/buildman/test.py          | 75 +++++++++++++++++++++++++++++++++
 tools/buildman/toolchain.py     | 24 +++++------
 tools/u_boot_pylib/test_util.py | 11 +++--
 11 files changed, 111 insertions(+), 30 deletions(-)