name: Test on: workflow_dispatch: workflow_call: permissions: contents: read jobs: tests: name: Python tests runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v5 - name: Set up Python uses: actions/setup-python@v5 with: python-version-file: "pyproject.toml" - name: Install the project run: uv sync --all-extras --dev --frozen --no-install-project - name: Setup pre-commit cache uses: actions/cache@v4 with: path: ~/.cache/pre-commit key: pre-commit-3|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml') }} - name: Check pre-commit run: uv run pre-commit run --show-diff-on-failure --color=always --all-files - name: Test run: uv run pytest --cov=. --cov-branch --cov-report term-missing:skip-covered working-directory: ./src/