65 lines
1.3 KiB
YAML
65 lines
1.3 KiB
YAML
name: Test Python
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize, reopened]
|
|
|
|
jobs:
|
|
run_pytest:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v5
|
|
|
|
- name: Set up Python
|
|
run: uv python install
|
|
|
|
- name: Install the project dependencies
|
|
run: uv sync --all-groups
|
|
|
|
- name: Run pytest
|
|
run: uv run pytest -q
|
|
|
|
run_mypy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v5
|
|
|
|
- name: Set up Python
|
|
run: uv python install
|
|
|
|
- name: Install the project dependencies
|
|
run: uv sync --all-groups
|
|
|
|
- name: Run mypy
|
|
run: |
|
|
uv add pip
|
|
uv run mypy --install-types --non-interactive
|
|
|
|
run_lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v5
|
|
|
|
- name: Set up Python
|
|
run: uv python install
|
|
|
|
- name: Install the project dependencies
|
|
run: uv sync --all-groups
|
|
|
|
- name: Run lint
|
|
run: |
|
|
uv tool install ruff
|
|
uv tool run ruff check .
|