Testing

RadioViz follows a strict layered architecture that keeps business logic and UI separated. The unit tests focus on the controller, service, and tool logic that can run without importing heavy GUI components. This keeps tests fast and deterministic. As a result, overall coverage can look (and actually is) low, but the core business logic is exercised in isolation.

Running Tests

Tests are executed with Hatch. The environment is created automatically when you run the command:

hatch test

If you need to target a specific Python version (e.g., 3.9), use:

hatch test -py 3.9

If you want to run test for all supported python versions, use:

hatch test -a