rename some troublesome methods related to internal datastores and im… #1
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, pull_request, workflow_dispatch ] | |
| permissions: {} | |
| concurrency: | |
| group: tests-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| pytest: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: [ "3.12", "3.13", "3.14" ] | |
| name: pytest (Python ${{ matrix.python-version }}) | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v6 | |
| - name: Install Python ${{ matrix.python-version }} | |
| run: uv python install ${{ matrix.python-version }} | |
| - name: Install dependencies | |
| run: uv sync --all-extras --python ${{ matrix.python-version }} | |
| # Network-dependent tests need a live OSH server (e.g. localhost:8282). | |
| # They're tagged `@pytest.mark.network` and skipped here. The plan is | |
| # to shim those with mocks; once a test no longer needs a real server, | |
| # drop the marker and it will run in CI automatically. | |
| - name: Run pytest with coverage | |
| run: | | |
| uv run --python ${{ matrix.python-version }} pytest -v \ | |
| -m "not network" \ | |
| --cov --cov-report=term --cov-report=xml | |
| # Keep coverage.xml around so a later badge/Codecov upload step can use it. | |
| - name: Upload coverage report artifact | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: coverage-${{ matrix.python-version }} | |
| path: coverage.xml | |
| if-no-files-found: warn | |
| retention-days: 7 |