Skip to content

Latest commit

 

History

History
64 lines (43 loc) · 1.78 KB

File metadata and controls

64 lines (43 loc) · 1.78 KB

Testing and Quality

1. Local Simulator Tests

./hyper stlib build --preset simulator --run-tests

Run only ADC tests:

./hyper stlib build --preset simulator
ctest --preset simulator-adc

2. Tests with Sanitizers

./hyper stlib build --preset simulator-asan
ctest --preset simulator-all-asan

3. Formatting

This repository uses pre-commit and clang-format.

Install hooks:

pip install pre-commit
pre-commit install --install-hooks --hook-type pre-commit --hook-type pre-push

Run manually:

pre-commit run --all-files

4. GitHub Actions CI

  • Compile Checks: builds MCU matrix (no simulator tests)
  • Run Simulator Tests: runs tests using simulator preset
  • Format Checks: validates formatting with pre-commit

5. TCP/IP Hardware Stress Tests

For Ethernet/socket stress testing on real hardware, see:

  • docs/template-project/example-tcpip.md
  • Per-example quick guides: docs/examples/README.md
  • One-shot Nucleo flow: ./tools/run_example_tcpip_nucleo.sh
  • Run strict matrix gate: ./tools/example_tcpip_quality_gate.sh
  • Run long soak: ./tools/example_tcpip_soak.sh
  • Run multi-hour soak + ratio summary: ./tools/example_tcpip_soak_hours.sh

6. Packet / Order Parser Validation on Hardware

For generated OrderPackets / DataPackets validation on real hardware, see:

Core/Inc/Communications/Packets/DataPackets.hpp and Core/Inc/Communications/Packets/OrderPackets.hpp are generated from the active JSON_ADE schema during build. They are intentionally gitignored and should not be committed.