name: Tests

on:
  push:
    branches:
      - testing

jobs:
  test:
    name: Test on ${{ matrix.os }}
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest, windows-latest, macos-latest]
    steps:
      - name: Checkout code
        uses: actions/checkout@v4
      - name: Set up Python 3.10
        uses: actions/setup-python@v5
        with:
          python-version: '3.10'
      - name: Set up Python 3.11
        uses: actions/setup-python@v5
        with:
          python-version: '3.11'
      - name: Set up Python 3.12
        uses: actions/setup-python@v5
        with:
          python-version: '3.12'
      - name: Install uv
        run: |
          python -m pip install --upgrade pip
          pip install uv
        shell: bash
      - name: Install tox
        run: |
          pip install tox tox-uv
        shell: bash
      - name: Run tests with tox (all Python versions, min scenario)
        run: |
          tox -e py310-min,py311-min,py312-min
        shell: bash
        env:
          BEZIER_NO_EXTENSION: 1
