Skip to content

Add pytest GitHub action #18

Add pytest GitHub action

Add pytest GitHub action #18

Workflow file for this run

# copied from https://github.com/XENONnT/straxen/blob/master/.github/workflows/pytest.yml
# Test fuse on each PR.
# We run three types of tests:
# - Pytest -> these are the "normal" tests and should be run for all
# python versions
# - Coveralls -> this is to see if we are covering all our lines of
# code with our tests. The results get uploaded to
# coveralls.io/github/XENONnT/fuse
name: Test package
# Trigger this code when a new release is published
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ "ubuntu-latest" ]
python-version: [ "3.9", "3.10" ]
test: [ 'coveralls', 'pytest' ]
steps:
# Setup and installation
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Checkout repo
uses: actions/checkout@v4
- name: Install dependencies
# following https://github.com/NESTCollaboration/nestpy/blob/master/README.md
run: |
python -m pip install --upgrade pip
python -m pip install pytest coverage coveralls
git clone https://github.com/NESTCollaboration/nestpy.git
cd nestpy
git submodule update --init --recursive
pip install .
cd ..
rm -rf nestpy
- name: Install fuse
run: |
pip install .
- name: Test package
# This is running a normal test
run: |
coverage run --source=fuse -m pytest --durations 0
coverage report
- name: Coveralls
# Make the coverage report and upload
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
if: matrix.test == 'coveralls'
run: |
coverage run --source=fuse -m pytest -v
coveralls --service=github
- name: goodbye
run: echo "tests done, bye bye"