Guard the coverage claim in the suite, not only in a note #23
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Tests | |
| on: | |
| push: | |
| branches: ["**"] | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| test: | |
| name: pytest (Python ${{ matrix.python-version }} on ${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest] | |
| python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] | |
| include: | |
| # one macOS leg on the newest interpreter, to catch platform issues | |
| - os: macos-latest | |
| python-version: "3.13" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| cache: pip | |
| - name: Install pycurious with test extra | |
| # The suite imports only pytest, numpy, scipy and pycurious itself; | |
| # numpy/scipy are core dependencies and `import pycurious` stays light | |
| # because mapping/download lazy-import their heavy deps. So the `test` | |
| # extra (just pytest) is all that is needed to run everything. | |
| run: python -m pip install -e ".[test]" | |
| - name: Run the full test suite | |
| run: pytest -v |