| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- name: Code tests macOS
- on:
- push:
- branches: [ main ]
- paths:
- - '**/*.py'
- - '**/*.ipynb'
- - '**/*.yaml'
- - '**/*.yml'
- - '**/*.sh'
- pull_request:
- branches: [ main ]
- paths:
- - '**/*.py'
- - '**/*.ipynb'
- - '**/*.yaml'
- - '**/*.yml'
- - '**/*.sh'
- workflow_dispatch:
- concurrency:
- group: ${{ github.workflow }}-${{ github.ref }}
- cancel-in-progress: true
- jobs:
- uv-tests:
- name: Code tests (macOS)
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v4
- - name: Set up Python (uv)
- uses: actions/setup-python@v5
- with:
- python-version: "3.13"
- - name: Install uv and dependencies
- shell: bash
- run: |
- curl -LsSf https://astral.sh/uv/install.sh | sh
- uv sync --dev --python=3.10 # tests for backwards compatibility
- uv pip install -r ch05/07_gpt_to_llama/tests/test-requirements-extra.txt
- uv add pytest-ruff nbval
- - name: Test Selected Python Scripts (uv)
- shell: bash
- run: |
- source .venv/bin/activate
- pytest --ruff setup/02_installing-python-libraries/tests.py
- pytest --ruff ch04/01_main-chapter-code/tests.py
- pytest --ruff ch05/01_main-chapter-code/tests.py
- pytest --ruff ch05/07_gpt_to_llama/tests/tests.py
- pytest --ruff ch05/12_gemma3/tests/test_gemma3.py
- pytest --ruff ch06/01_main-chapter-code/tests.py
- - name: Validate Selected Jupyter Notebooks (uv)
- shell: bash
- run: |
- source .venv/bin/activate
- pytest --ruff --nbval ch02/01_main-chapter-code/dataloader.ipynb
- pytest --ruff --nbval ch03/01_main-chapter-code/multihead-attention.ipynb
- pytest --ruff --nbval ch02/04_bonus_dataloader-intuition/dataloader-intuition.ipynb
|