Skip to content

Testing and Compatibility

iliyan85 edited this page Jul 5, 2026 · 1 revision

Testing and Compatibility

The primary test command in the main repository is:

python -m pytest

Do not hardcode a test count in documentation or release notes; the suite changes over time.

Tested Areas

The current test suite covers:

  • Multipart assembly.
  • TAG handling.
  • Metadata writer and cleaner behavior.
  • UDPSEC helpers and session behavior.
  • Source identity and target identity helpers.
  • Routing-table compilation.
  • Logical zone set operations.
  • Global and target-scoped deduplication.
  • Routing snapshots and generations.
  • Runtime routing integration.
  • Control service behavior.
  • Versioned JSON protocol.
  • Unix transport.
  • Unix client.
  • aismixerctl.
  • Runtime lifecycle behavior.

Platform Behavior

The core service and pure tests are developed on Windows and POSIX environments.

Unix-domain control sockets require POSIX support. Unix listener integration tests skip cleanly on unsupported Windows asyncio environments; skipped Unix tests are not failures.

Production control-socket verification should be performed on Linux, WSL, Raspberry Pi OS, or another POSIX environment with asyncio Unix-socket support.

Focused POSIX control-socket run:

python -m pytest \
  tests/test_routing_control_unix.py \
  tests/test_routing_control_unix_client.py \
  tests/test_runtime_control.py \
  -q -ra

Documentation and Change Checks

For wiki or Markdown-only changes, run:

git diff --check

For Python changes in the main repository, optional syntax checks can use py_compile on changed modules. For configuration examples, parse YAML and, where relevant, validate routing examples against the available target IDs.

This page does not claim a GitHub Actions workflow. Verify CI status from the repository itself when needed.

See Operations and Deployment and Known Limitations.

Clone this wiki locally