manuskript/.github/workflows/pytest.yml

44 lines
1.6 KiB
YAML

# This workflow is used to run pytest and confirm
# that Linux builds meet the pytest requirements for the project.
name: Pytest Run (Linux)
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the develop branch
push:
branches: [ develop ]
pull_request:
branches: [ develop ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
test:
name: Running pytest ${{ matrix.python_version }} and ${{ matrix.os }}
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
strategy:
matrix:
# https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs
python-version: [3.9]
os: [ubuntu-20.04]
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pyqt5==5.15.7 lxml pytest pytest-faulthandler
sudo apt-get -qq update
sudo apt-get -qq install python3-pip python3-dev build-essential qt5-default libxml2-dev libxslt1-dev mesa-utils libgl1-mesa-glx libgl1-mesa-dev libxcb-xinerama0-dev
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Test with pytest
run: |
xvfb-run -s '-screen 0 640x480x24 +extension GLX' pytest -vs