Skip to content

Add test workflows

Add test workflows #1

Workflow file for this run

name: '3.2. 🧪 Test (setup matrix action)'
on: push
jobs:
# Setup matrix
setup-matrix:
runs-on: ubuntu-latest
steps:
- if: startsWith(github.ref, 'refs/tags/')
uses: druzsan/setup-matrix@feature/use-python-dockerfile
with:
matrix: |
os: ubuntu-latest windows-latest macos-latest,
python-version: 3.8 3.10 3.12
- if: github.ref == 'refs/heads/main'
uses: druzsan/setup-matrix@feature/use-python-dockerfile
with:
matrix: |
os: ubuntu-latest,
python-version: 3.8 3.10 3.12
include: |
os: windows-latest python-version: 3.8,
os: macos-latest python-version: 3.8
- if: github.ref != 'refs/heads/main' && !startsWith(github.ref, 'refs/tags/')
uses: druzsan/setup-matrix@feature/use-python-dockerfile
with:
matrix: |
os: ubuntu-latest,
python-version: 3.8
# MATRIX environment variable is set by the last executed action
- id: setup-matrix
run: echo "matrix=$MATRIX" >> $GITHUB_OUTPUT
outputs:
matrix: ${{ steps.setup-matrix.outputs.matrix }}
# Run unit-test
unit-test:
name: '🧪 Unit-Test'
needs: setup-matrix
strategy:
matrix: ${{ fromJson(needs.setup-matrix.outputs.matrix) }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- run: python -m pip install -IU pip setuptools wheel
- run: pip install -IUr requirements.txt -r requirements-dev.txt
- run: python -m pytest