Testing suite
AGNI's test suite is designed to sustain the code with physics-grade rigour. This page gives a short overview of the suite and where its results are published; for instructions on running tests yourself, see Testing in the how-to guides.
Tests are organised as individual files under test/ (e.g. test_consts.jl, test_phys.jl), one per source module, and are collected automatically by test/runtests.jl. A fast mode skips expensive integration tests that require a full SOCRATES installation, so that most changes can be checked quickly in the automatic workflows.
Status badges
The badges below are generated by AGNI's automatic testing workflows and reflect the state of the main branch. The test-count and local-coverage badges are online using a GitHub Gist.
- The Codecov badge reports line-coverage percentage from the most recent run with
--code-coverageenabled, as processed by codecov.io. - The workflow status badge reports pass/fail of the
install_and_test.ymlGitHub Actions workflow. - The Tests badge reports the total number of
@testassertions currently collected byruntests.jl. - The Unit tests and Integration tests badges break that total down by test category.
- The Coverage badge is a second, self-hosted coverage figure computed directly from
runcoverage.jl's output and published to the same gist as the test counts.
Model validation
Unit and integration tests check that the code behaves as implemented. They do not establish that AGNI reproduces the physics it is meant to model. Broader validation of AGNI against reference cases and other codes in the PROTEUS ecosystem is tracked on the PROTEUS validation website: