Repository hygiene · rule repo-no-tests
Data repository with no test files
A Metacenta review checks this under the rule The repo contains tests. Everything below applies whether or not you ever commission one.
What this rule checks
This rule flags a repository with no file that follows a common test convention. Anything under a tests/, test/ or spec/ folder passes. So do names like *.test.*, *.spec.*, test_*.py, *_test.py, *_test.go and conftest.py. Generic dbt tests declared in schema YAML are not files, so they do not count here.
Why it matters
Every change is then verified by hand, so the cost of a refactor grows with the size of the codebase. A regression surfaces when someone questions a number, not when the change is made.
How to fix it
Start a test suite on the transformations most often disputed. Add a test target, starting with the transformations most often blamed for wrong numbers. In a dbt project, singular tests live in the tests/ folder, which this rule recognises.
When it is fine to leave
A dbt project whose only tests are generic tests in schema YAML is tested, even though this rule sees no test files. The dbt rules on untested models judge that coverage properly. Tell us, and the finding comes out of your report.
What we need to check it
Read-only access to the repository's file list. We match names only, so a suite with an unusual naming convention is missed, and the finding is medium confidence. If the listing was truncated, we decline rather than report.