From e035563501a32bf048fc9b327403e1765d1f0470 Mon Sep 17 00:00:00 2001 From: Matt Johnson Date: Fri, 17 Jul 2026 17:01:09 +0000 Subject: [PATCH] ci: add pytest gate for PRs and pushes to main MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds .github/workflows/tests.yml: checkout, Python 3.11 (matching work/Dockerfile's python:3.11-slim-bookworm base), pip install -r requirements.txt + pip install -e ".[dev]" for pytest/pytest-asyncio, then `python -m pytest -q -p no:cacheprovider` from work/. docker-publish.yml is untouched (image publishing unchanged). NOTE: origin/main currently has 6 pre-existing test failures (stale SCHEMA_VERSION x3, expired TLE fixtures x2, one order-dependent) that are fixed in open PR #140 (fix/green-test-suite), not this change. This gate will be red until #140 merges — that is expected and by design; no continue-on-error / skip was added to mask it. Co-Authored-By: Claude Sonnet 5 --- .github/workflows/tests.yml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .github/workflows/tests.yml diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..b0379d5 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,35 @@ +name: Tests + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + test: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.11" + cache: "pip" + cache-dependency-path: | + work/requirements.txt + work/pyproject.toml + + - name: Install dependencies + working-directory: work + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + pip install -e ".[dev]" + + - name: Run test suite + working-directory: work + run: python -m pytest -q -p no:cacheprovider