Files
EvoScientist/.github/workflows/test.yml
T

57 lines
1.7 KiB
YAML

name: Test
on:
push:
branches: ["main"]
pull_request:
jobs:
pytest:
timeout-minutes: 15
# ``fail-fast: false`` so a single failing (os, python-version) cell
# doesn't cancel the rest of the matrix. Useful while the Windows
# leg is being brought up — we want to see all four cell results
# in one CI run instead of playing whack-a-mole one failure at a
# time. See #207.
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.11", "3.12"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: Check out shared usage fixtures
uses: actions/checkout@v5
with:
repository: EvoScientist/EvoScientist-WebUI
path: EvoScientist-WebUI
- uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
cache-dependency-glob: "**/pyproject.toml"
- name: Install dependencies
run: uv sync --dev
- name: Run pytest
run: uv run pytest -v --timeout=30
env:
EVOSCIENTIST_USAGE_FIXTURES: ${{ github.workspace }}/EvoScientist-WebUI/docs/schemas/fixtures
usage-spool-benchmark:
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- uses: astral-sh/setup-uv@v6
with:
python-version: "3.11"
cache-dependency-glob: "**/pyproject.toml"
- name: Install dependencies
run: uv sync --dev
- name: Verify durable spool latency
run: uv run python scripts/benchmark_usage_spool.py