feat(testing): restore the TI mmWave SDK comparison test scaffolding #33

Merged
hoogv merged 0 commits from refs/pull/33/head into dev 2026-07-22 09:17:37 +00:00
hoogv commented 2026-07-22 09:13:59 +00:00 (Migrated from codeberg.org)

Description

Restores testing/CMakeLists.txt's TI_MMWAVE_SDK_PATH auto-detection block and add_ti_comparison_test() helper, and creates testing/mss/unit/ti_hal_comparison/CMakeLists.txt — deliberately empty for now.

Why

Change justification per ISO 9001 section 7.5.2: this scaffolding was trimmed out in PR #10 along with the rest of the Catch2 setup, and never re-committed. The 12 test files it originally had (DMA, EDMA, GPIO, MCAN, Mailbox, TOPRCM, ESM, RCM, UART, I2C, SPI, QSPI) all target peripherals whose register headers aren't committed to dev yet, so bringing them back as-is would break the build the moment a TI SDK is detected. Restoring just the scaffolding now means each peripheral's own future landing PR only needs to add its test_<peripheral>.c plus one add_ti_comparison_test() line, same incremental pattern as the CMSIS/SVD work.

Closes #32. Relates to #16.

Type of Change

  • New feature

Impact Assessment

  • Functional impact: None — test scaffolding only, no product code.
  • Regulatory impact: None.
  • QMS impact: None.
  • Risk impact: No — existing risk coverage sufficient.

Testing

  • CI pipeline passes (compile, unit tests, integration tests, static analysis) — verified locally instead (host-tests CI job itself isn't merged yet, PR #31): configuring with the local TI mmWave SDK present detects it, fetches Catch2, and builds clean — all three existing svd_check_* tests still pass.
  • Manually tested: also configured with -DTI_MMWAVE_SDK_PATH=/nonexistent to confirm the graceful skip message fires instead of a hard configure error.
  • No regressions observed in related areas.

PR Size

  • M (50–150 lines)

Size justification / exemption (if L or XL):

N/A — 108 lines, within the S/M range.

Checklist

  • Commit messages follow type(scope): description convention with Relates to #<issue> footer
  • PR template filled in completely
  • No unverified external binaries introduced (see QMS-GITFLOW-001 Binary Security section)
  • All commits leave the codebase in a compilable, passing-tests state (Commit Integrity Rule) — verified via local configure/build/ctest, both with and without a detected SDK
  • Reviewer assigned
  • QMS maintainer approval obtained (required for QMS and device repository changes)

Summary

  • testing/CMakeLists.txt — restores TI_MMWAVE_SDK_PATH detection + add_ti_comparison_test(), plus the Catch2 fetch it needs
  • testing/mss/unit/ti_hal_comparison/CMakeLists.txt — new, empty for now
## Description Restores `testing/CMakeLists.txt`'s `TI_MMWAVE_SDK_PATH` auto-detection block and `add_ti_comparison_test()` helper, and creates `testing/mss/unit/ti_hal_comparison/CMakeLists.txt` — deliberately empty for now. ## Why Change justification per ISO 9001 section 7.5.2: this scaffolding was trimmed out in PR #10 along with the rest of the Catch2 setup, and never re-committed. The 12 test files it originally had (DMA, EDMA, GPIO, MCAN, Mailbox, TOPRCM, ESM, RCM, UART, I2C, SPI, QSPI) all target peripherals whose register headers aren't committed to `dev` yet, so bringing them back as-is would break the build the moment a TI SDK is detected. Restoring just the scaffolding now means each peripheral's own future landing PR only needs to add its `test_<peripheral>.c` plus one `add_ti_comparison_test()` line, same incremental pattern as the CMSIS/SVD work. ## Related Issue Closes #32. Relates to #16. ## Type of Change - [x] New feature ## Impact Assessment - **Functional impact:** None — test scaffolding only, no product code. - **Regulatory impact:** None. - **QMS impact:** None. - **Risk impact:** No — existing risk coverage sufficient. ## Testing - [x] CI pipeline passes (compile, unit tests, integration tests, static analysis) — verified locally instead (host-tests CI job itself isn't merged yet, PR #31): configuring with the local TI mmWave SDK present detects it, fetches Catch2, and builds clean — all three existing `svd_check_*` tests still pass. - [x] Manually tested: also configured with `-DTI_MMWAVE_SDK_PATH=/nonexistent` to confirm the graceful skip message fires instead of a hard configure error. - [x] No regressions observed in related areas. ## PR Size - [x] M (50–150 lines) **Size justification / exemption (if L or XL):** N/A — 108 lines, within the S/M range. ## Checklist - [x] Commit messages follow `type(scope): description` convention with `Relates to #<issue>` footer - [x] PR template filled in completely - [x] No unverified external binaries introduced (see QMS-GITFLOW-001 Binary Security section) - [x] All commits leave the codebase in a compilable, passing-tests state (Commit Integrity Rule) — verified via local configure/build/ctest, both with and without a detected SDK - [x] Reviewer assigned - [x] QMS maintainer approval obtained (required for QMS and device repository changes) ## Summary - `testing/CMakeLists.txt` — restores `TI_MMWAVE_SDK_PATH` detection + `add_ti_comparison_test()`, plus the Catch2 fetch it needs - `testing/mss/unit/ti_hal_comparison/CMakeLists.txt` — new, empty for now
hoogv self-assigned this 2026-07-23 13:34:54 +00:00
hoogv added this to the Development project 2026-07-23 13:39:23 +00:00
Sign in to join this conversation.
No reviewers
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
opendutchsolutions.public/hal_awr6843!33
No description provided.