Skip to content

Test notebooks

Test notebooks #214

name: Test notebooks
on:
push:
branches:
- main
pull_request:
branches:
- main
schedule:
- cron: '0 5 * * 1'
workflow_dispatch:
jobs:
tests:
name: ${{ matrix.os }} ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
# Run all supported OS for one Python version, then add a few extra scenarios
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ['3.10']
toxenv: [py310-test]
name: ['with Python 3.10',]
include:
- python-version: '3.9'
toxenv: py39-test-oldestdeps
name: with Python 3.9 and oldest versioned dependencies
os: ubuntu-latest
- python-version: '3.11'
toxenv: py311-test
name: with Python 3.11 and latest released version of dependencies
os: ubuntu-latest
- python-version: '3.12'
toxenv: py312-test-predeps
name: with Python 3.12 and latest or pre-release version of dependencies
os: ubuntu-latest
- python-version: '3.12'
toxenv: py312-test-devdeps
name: with Python 3.12 and developer versioned dependencies
os: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b #v5.3.0
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: python -m pip install --upgrade tox
- name: Test with nbval
run: tox ${{ matrix.toxargs }} -e ${{ matrix.toxenv }} -- ${{ matrix.toxposargs }}