# SPDX-FileCopyrightText: Daniele Nicolodi <daniele@grinta.net>
# SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later

name: tests
on:
  push:
    branches:
      - master
  pull_request:

jobs:
  tests:
    runs-on: ${{ matrix.platform }}
    strategy:
      fail-fast: false
      matrix:
        python:
          - '3.8'
          - '3.9'
          - '3.10'
          - '3.11'
          - '3.12'
          - '3.13'
          - '3.13t'
          - '3.14'
          - '3.14t'
        platform:
          - macos-latest
          - ubuntu-latest
          - windows-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: ${{ matrix.python }}
          allow-prereleases: true
      - uses: bus1/cabuild/action/msdevshell@v1
        with:
          architecture: x64
        if: runner.os == 'Windows'
      - run: python -m pip install build
      - run: python -m build
      - run: python -m pip install dist/*.whl
        shell: bash
      - run: python -m unittest test.py
      - run: python check.py
        env:
          PYTHONHASHSEED: 0
