From 1a21fdf6ba12cd4abbf974e2754aca696ba5cb44 Mon Sep 17 00:00:00 2001 From: Seth Fitzsimmons Date: Mon, 5 Oct 2026 15:05:37 -0700 Subject: [PATCH] docs: explain what testmon's "no tests ran" means make check and make test select tests with pytest-testmon, so on a tree whose code has already passed they print "no tests ran" and exit 0. That reads as a skipped suite to anyone unfamiliar with testmon. Say what it means, and point at make test-all for data-only changes testmon can't see. Signed-off-by: Seth Fitzsimmons --- AUTHORING.md | 16 +++++++++++++++- README.md | 2 +- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/AUTHORING.md b/AUTHORING.md index 0c0300281..d00b77370 100644 --- a/AUTHORING.md +++ b/AUTHORING.md @@ -1450,9 +1450,12 @@ This project uses [uv](https://docs.astral.sh/uv/) for dependency management: # Install dependencies for the entire workspace uv sync --all-packages -# Run all tests and type/code quality checks +# Run the tests affected by your changes, plus type/code quality checks make check +# Run every test, regardless of what changed +make test-all + # Run tests for a specific package uv run pytest packages/overture-schema-theme-buildings/ @@ -1460,6 +1463,17 @@ uv run pytest packages/overture-schema-theme-buildings/ uv run pytest -k "buildings" ``` +`make check` and `make test` select tests with +[pytest-testmon](https://testmon.org/). Testmon records which code each test ran (in +`.testmondata`) and runs only the tests whose code has changed since they last passed. Its +record is independent of git: an uncommitted edit that an earlier run already tested +counts as clean. So when `make check` prints `no tests ran` and exits 0, every test that +touches the current code has passed against it. The suite wasn't skipped. + +Testmon tracks Python code, not data. A change to a golden baseline file or to the +`[[examples.]]` tables in a theme's `pyproject.toml` selects no tests, so run +`make test-all` after one. + Auto-format / fix code to align with project expectations: ```shell diff --git a/README.md b/README.md index 9f2fd167c..f53b11ee5 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ These pages are for people working with the packages in code: - [GLOSSARY.md](GLOSSARY.md) — vocabulary for both the data model (entity, feature type, theme) and the Python toolchain (entry point, workspace, discriminated union). -Run the full test and quality suite with: +Run the tests affected by your changes, plus the quality checks, with: ```bash make check