Skip to content

test: maximize FuSa/cyber requirement test coverage to 100%#19

Merged
SoundMatt merged 1 commit into
mainfrom
feat/maximize-test-coverage
Jun 19, 2026
Merged

test: maximize FuSa/cyber requirement test coverage to 100%#19
SoundMatt merged 1 commit into
mainfrom
feat/maximize-test-coverage

Conversation

@SoundMatt

Copy link
Copy Markdown
Owner

Summary

Raises requirement→test traceability from 51% (166/322) to 100% (331/331), across both functional-safety (ISO 26262) and cybersecurity (IEC 62443 / mTLS / E2E) requirements.

Changes

  • Declared 9 missing requirements (REQ-CLI-001..004, REQ-RELAY-001..005) in .fusa-reqs.json — they were exercised by tests but absent from the DB. Fixed test_cli/test_relay to use the fusa:test tag (they used fusa:req, which made them invisible to the coverage scan).
  • Bucket A (12 existing files): completed fusa:test headers and added real cases for previously-untested requirements — thread-safety (admin/authz/dyndata/observe/record), span error + counter capture (observe), ErrClosed/ErrTimeout failover (redundancy), latency-budget timeout & deregister-closes-upstream (proxy), multi-chunk firmware transfer, federation close/closed-lookup/dup-register, config ParseError, zonegroup value-semantics & context-deadline.
  • Bucket B (13 new files): canbr, ddsbr, doipbr, grpcbridge, linbr, mqttbr, restbridge, someipbr, udsbr, tsn, mdns, powerstate, tls — wired into CTest. Stub/TLS tests assert the observable surface (function_not_supported, config defaults, secure-by-default refusal rather than plaintext fallback), with comments noting the link-gated real backends.

Verification

  • 331/331 requirements test-traced (314 ISO 26262 + 8 IEC 62443 + 9 RELAY/CLI conformance).
  • 41 ctest suites, 323 TEST_CASEs, all green locally. (rcp_latency is a pre-existing timing flake under parallel load; passes in isolation and CI runs serially.)
  • All cybersecurity controls (AUTH, TLS, E2E, CAPI) covered.

Note: TARA.md working-tree change is the parked case-collision item and is intentionally excluded from this PR.

Raise requirement->test traceability from 51% (166/322) to 100% (331/331).

- Add REQ-CLI-001..004 and REQ-RELAY-001..005 to .fusa-reqs.json (were tested but undeclared); fix test_cli/test_relay to use fusa:test.

- Bucket A: complete fusa:test headers + add real cases for previously untested reqs across admin, authz, capi, config, dyndata, federation, firmware, observe, proxy, record, redundancy, zonegroup (thread-safety, error/counter capture, ErrClosed/ErrTimeout failover, latency-budget timeout, multi-chunk transfer, value semantics, context-deadline).

- Bucket B: add 13 new test files (canbr, ddsbr, doipbr, grpcbridge, linbr, mqttbr, restbridge, someipbr, udsbr, tsn, mdns, powerstate, tls) and wire into CTest. Stub/TLS tests assert the observable surface (function_not_supported, config defaults, secure-by-default refusal).

Full suite: 41 ctest suites, 323 TEST_CASEs. All security controls (AUTH, TLS, E2E, CAPI) test-traced.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Matt Jones <47545907+SoundMatt@users.noreply.github.com>
@SoundMatt
SoundMatt merged commit d71532c into main Jun 19, 2026
19 checks passed
@SoundMatt
SoundMatt deleted the feat/maximize-test-coverage branch June 19, 2026 13:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant