Skip to content

Merge pull request #213 from jlaehne/fix-towncrier #744

Merge pull request #213 from jlaehne/fix-towncrier

Merge pull request #213 from jlaehne/fix-towncrier #744

Workflow file for this run

name: Tests
on: [push, pull_request]
jobs:
run_test_suite:
name: ${{ matrix.os }}-py${{ matrix.PYTHON_VERSION }}${{ matrix.LABEL }}
runs-on: ${{ matrix.os }}-latest
timeout-minutes: 30
env:
MPLBACKEND: agg
PIP_ARGS: --upgrade -e
PYTEST_ARGS: --pyargs lumispy
PYTEST_ARGS_COVERAGE:
strategy:
fail-fast: false
matrix:
os: [ubuntu, windows, macos]
PYTHON_VERSION: ['3.8', '3.12']
PIP_SELECTOR: ['[tests]',]
include:
- os: ubuntu
PYTHON_VERSION: '3.9'
PIP_SELECTOR: '[tests]'
- os: ubuntu
PYTHON_VERSION: '3.10'
PIP_SELECTOR: '[tests]'
- os: ubuntu
PYTHON_VERSION: '3.11'
PIP_SELECTOR: '[tests, coverage]'
PYTEST_ARGS_COVERAGE: --cov=lumispy --cov-report=xml
LABEL: '/coverage'
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
name: Install Python
with:
python-version: ${{ matrix.PYTHON_VERSION }}
- name: Display version
run: |
python --version
pip --version
- name: Install
shell: bash # needed for pip-selector under windows
run: |
pip install ${{ env.PIP_ARGS }} .'${{ matrix.PIP_SELECTOR }}'
- name: Pip list
run: |
pip list
- name: Install (HyperSpy dev)
# Test against the hyperspy `RELEASE_next_minor` branch
if: ${{ matrix.PYTEST_ARGS_COVERAGE }}
shell: bash
run: |
pip install https://github.com/hyperspy/hyperspy/archive/RELEASE_next_minor.zip
- name: Run test suite
run: |
pytest ${{ env.PYTEST_ARGS }} ${{ matrix.PYTEST_ARGS_COVERAGE }}
- name: Upload coverage to Codecov
if: ${{ always() }} && ${{ matrix.PYTEST_ARGS_COVERAGE }}
uses: codecov/codecov-action@v4