name: Tests
on: [ pull_request ]

jobs:
  run-tests:
    strategy:
      fail-fast: false
      matrix:
        python-version: [ "3.9", "3.10", "3.11", "3.12" ]
        poetry-version: [ 1.2 ]
        pydantic-version: [ 1.10.0, 2.11 ]
        os: [ ubuntu-latest ]
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python-version }}
      - name: Run image
        uses: abatilo/actions-poetry@v2
        with:
          poetry-version: ${{ matrix.poetry-version }}
      - name: poetry install
        run: poetry install
      - name: pydantic install
        run: poetry add pydantic==${{ matrix.pydantic-version }}
      - name: run tests
        run: poetry run pytest
