Skip to content

static_reflection_with_serialization: migrate test requirement links - #573

Draft
Nikhil2206 wants to merge 2 commits into
eclipse-score:mainfrom
Nikhil2206:nk-static-reflection-test-req-trace
Draft

Nikhil2206 wants to merge 2 commits into
eclipse-score:mainfrom
Nikhil2206:nk-static-reflection-test-req-trace

Conversation

@Nikhil2206

Copy link
Copy Markdown
Contributor

Summary

Part of the #522 test-to-requirement traceability cleanup, following .agents/skills/requirements-management-skill/test-to-requirement-linking.md.

score/static_reflection_with_serialization already had a full requirements doc (docs/requirements/index.rst, 6 comp_req entries) but all 41 tests used legacy RecordProperty metadata (ParentRequirement with SCR-* IDs, ASIL, TestingTechnique). This PR migrates every test to the current convention: FullyVerifies/PartiallyVerifies pointing at comp_req__static_reflect_serial__*, TestType, and DerivationTechnique, with a non-mechanical Description for each. No test bodies or assertions were changed.

Files touched

  • serialization/test/ut/test_serializer_visitor.cpp (23 tests)
  • serialization/test/ut/test_size_visitor.cpp (1 TYPED_TEST_P)
  • serialization/test/ut/test_skip_deserialize.cpp (2 tests)
  • serialization/test/ut/test_visitor_type_traits.cpp (2 tests)
  • visitor/test/ut/test_detail.cpp (2 tests)
  • visitor/test/ut/test_struct_visitor.cpp (5 tests, one of which — TupleToArrayTest — had no RecordProperty at all and was linked from scratch)
  • visitor/test/ut/test_visitor.cpp (4 tests)
  • visitor/examples/ostream/test/ut/test_ostream_visitor.cpp (2 tests, already had TestType, added the missing PartiallyVerifies/DerivationTechnique)

Validation

  • bazel test --config=bl-x86_64-linux //score/static_reflection_with_serialization/... — 5/5 targets pass.
  • bazel run //:docs is currently blocked in my sandbox by a pre-existing root-owned _build/ permission error, unrelated to this change (PermissionError on _build/warnings.txt). As a fallback I manually cross-checked every comp_req__static_reflect_serial__* ID used against docs/requirements/index.rst in this component — all resolve to an existing, status: valid requirement.
  • bazel run //:format.fix -- <touched files> — clean, no reformatting beyond the intended edits.

Deliberately left unlinked

Nothing in this component was left unlinked — all 41 tests across all 8 test files now carry current metadata.

Flagged requirement-quality issues

  • Several tests in test_serializer_visitor.cpp exercise more than one comp_req in a single test body (e.g. serializer_visitor.serializer round-trips containers, nested structs, and core scalar serialization all in one ~200-line test). I used comma-separated PartiallyVerifies lists where a test genuinely exercises multiple requirements, per the skill's guidance, rather than splitting the tests (out of scope for a metadata-only pass).
  • comp_req__static_reflect_serial__header_only and comp_req__static_reflect_serial__compile_eff (non-functional requirements about header-only packaging and compile-time efficiency) have no corresponding runtime test in this suite — there is no unit test that could exercise these; flagging in case the requirements owner wants a build-structure check or a static/compile-time assertion added.

Replace legacy RecordProperty metadata (ParentRequirement/SCR-* IDs,
ASIL, TestingTechnique) with FullyVerifies/PartiallyVerifies links to
comp_req__static_reflect_serial__* IDs, TestType, and DerivationTechnique
across all 41 tests in the component's 8 test files.
@github-project-automation github-project-automation Bot moved this to In Progress in BAS - Baselibs FT Sep 10, 2026
@Nikhil2206
Nikhil2206 deployed to workflow-approval September 10, 2026 09:48 — with GitHub Actions Active
@Nikhil2206
Nikhil2206 deployed to workflow-approval September 10, 2026 09:48 — with GitHub Actions Active
@Nikhil2206
Nikhil2206 deployed to workflow-approval September 10, 2026 09:48 — with GitHub Actions Active
@Nikhil2206
Nikhil2206 deployed to workflow-approval September 10, 2026 09:48 — with GitHub Actions Active
@github-actions github-actions Bot added comp-static_reflection_with_serialization Related to score/static_reflection_with_serialization c++ C++ code labels Sep 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Documentation preview for this pull request is available at:
pr-573: https://eclipse-score.github.io/baselibs/pr-573/

@Nikhil2206 Nikhil2206 closed this Sep 11, 2026
@github-project-automation github-project-automation Bot moved this from In Progress to Done in BAS - Baselibs FT Sep 11, 2026
@Nikhil2206 Nikhil2206 reopened this Sep 11, 2026
@Nikhil2206
Nikhil2206 marked this pull request as draft September 11, 2026 08:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

c++ C++ code comp-static_reflection_with_serialization Related to score/static_reflection_with_serialization

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant