1
Fork 0
mirror of https://github.com/Steffo99/cfig.git synced 2024-12-23 14:44:22 +00:00
cfig/.github/workflows/tests.yml

65 lines
1.5 KiB
YAML
Raw Normal View History

name: "Test suite"
on:
push:
branches:
- main
- master
pull_request:
branches:
- main
- master
workflow_call:
defaults:
run:
shell: bash
jobs:
pytest:
name: "🧪 Test package using pytest"
runs-on: ubuntu-latest
if: ${{ github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' }}
# If you need a database to perform your tests
# services:
# postgres:
# image: postgres
# env:
# POSTGRES_USER: username
# POSTGRES_PASSWORD: password
# POSTGRES_DB: db
# options: >-
# --health-cmd pg_isready
# --health-interval 10s
# --health-timeout 5s
# --health-retries 5
# ports:
# - "5432:5432"
steps:
- name: "⬇️ Checkout repository"
uses: actions/checkout@v3
- name: "🔨 Setup Python"
uses: actions/setup-python@v3
- name: "🔨 Setup Poetry"
uses: abatilo/actions-poetry@v3.0.0
- name: "🔨 Setup Poetry Python environment"
id: pyenv
uses: Steffo99/actions-poetry-deps@v0.2.5
- name: "🧪 Run tests"
run: |
source ${{ steps.pyenv.outputs.pyenv }}/activate
pytest --verbose --cov=. --cov-report=html
- name: "⬆️ Upload coverage"
uses: actions/upload-artifact@v4
with:
name: "Coverage"
path: htmlcov