Files
DD3-LoRa-Bridge-MultiSender/docs/TESTS.md

1.8 KiB

Legacy Unity Tests

This change intentionally keeps the existing PlatformIO legacy Unity harness unchanged. No platformio.ini, CI, or test-runner configuration was modified.

Compile-Only (Legacy Gate)

Use compile-only checks in environments that do not have a connected board:

pio test -e lilygo-t3-v1-6-1-test --without-uploading --without-testing
pio test -e lilygo-t3-v1-6-1-868-test --without-uploading --without-testing

Suite-specific compile checks:

pio test -e lilygo-t3-v1-6-1-test --without-uploading --without-testing -f test_html_escape
pio test -e lilygo-t3-v1-6-1-test --without-uploading --without-testing -f test_payload_codec
pio test -e lilygo-t3-v1-6-1-test --without-uploading --without-testing -f test_lora_transport
pio test -e lilygo-t3-v1-6-1-test --without-uploading --without-testing -f test_json_codec
pio test -e lilygo-t3-v1-6-1-test --without-uploading --without-testing -f test_refactor_smoke

Full On-Device Unity Run

When hardware is connected, run full legacy Unity tests:

pio test -e lilygo-t3-v1-6-1-test
pio test -e lilygo-t3-v1-6-1-868-test

Suite Coverage

  • test_html_escape: html_escape, url_encode_component, and sanitize_device_id edge/adversarial coverage.
  • test_payload_codec: payload schema v3 roundtrip/reject paths and golden vectors.
  • test_lora_transport: CRC16, frame encode/decode integrity, and chunk reassembly behavior.
  • test_json_codec: state JSON key stability and Home Assistant discovery payload manufacturer/key stability.
  • test_refactor_smoke: baseline include/type smoke and manufacturer constant guard.

Manufacturer Drift Guard

Run the static guard script to enforce Home Assistant manufacturer wiring:

powershell -ExecutionPolicy Bypass -File test/check_ha_manufacturer.ps1