Skip to content

Merge pull request #487 from PsychoinformaticsLab/rel/0.4.4 #572

Merge pull request #487 from PsychoinformaticsLab/rel/0.4.4

Merge pull request #487 from PsychoinformaticsLab/rel/0.4.4 #572

# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Python tests
on: [push, pull_request]
jobs:
build:
name: pytest (${{ matrix.python-version }}, ${{ matrix.os }})
runs-on: ubuntu-22.04
defaults:
run:
shell: bash -l {0}
strategy:
fail-fast: false
matrix:
python-version: ["3.7", "3.8", "3.9", "3.10"]
env:
FFMPEG_BINARY: /usr/bin/ffmpeg
IMAGEIO_FFMPEG_EXE: /usr/bin/ffmpeg
steps:
- uses: actions/checkout@v2
- uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: ${{ matrix.python-version }}
- name: Set up system dependencies
run: |
sudo add-apt-repository ppa:savoury1/ffmpeg4
sudo apt-get update
sudo apt-get upgrade -y ffmpeg
sudo apt-get install -y libavformat-dev libavfilter-dev libavdevice-dev libmp3lame-dev tesseract-ocr graphviz cmake libboost-python-dev libgraphviz-dev
- uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ hashFiles('setup.py') }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('optional-dependencies.txt') }}
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip wheel
python -m pip install --upgrade --ignore-installed setuptools coveralls pytest-cov pytest-forked pytest-xdist
python -m pip install -r requirements.txt -r optional-dependencies.txt --upgrade --upgrade-strategy eager
- name: Download support files
run: |
openssl aes-256-cbc -K $encrypted_a0a62c26415d_key -iv $encrypted_a0a62c26415d_iv -in pliers/tests/credentials/google.json.enc -out pliers/tests/credentials/google.json -d || true
python -m pliers.support.download
python -m spacy download en_core_web_sm
python -m pliers.support.setup_yamnet
- name: Test with pytest
env:
skip_high_memory: true
run: |
py.test pliers/tests -n auto --cov=pliers --cov-report xml -m "not requires_payment" -W ignore::UserWarning
skip_high_memory=false py.test pliers/tests/extractors/test_model_extractors.py -n auto --forked --cov-append --cov=pliers --cov-report xml -m "not requires_payment" -W ignore::UserWarning
- uses: codecov/codecov-action@v1