The following outlines the specific requirements we have for testing the Authelia code contributions.
While we aim for 100% coverage on changes and additions, we do not enforce this where it doesn’t make practical sense:
A test which just marks a line as tested is not necessarily an effectual test
Sometimes there is limited ways in which tests can be performed and the limitation makes the test ineffectual
Tests should be named to reflect what they testing for and which part of the code they are testing
It’s required for bug fixes that contributors create a test that fails prior to and passes
subsequent to the fix being applied, this test must be included in the contribution, excluding this test will likely
result in the fix being rejected unless explicitly agreed and advised otherwise by the
core team
It’s strongly encouraged for features that contributors create have as much testing as is reasonable i.e. any line
that can be tested should be tested, if the line can’t be tested generally this is an indication a refactor may be
required