Skip to content

build for all systems #146

build for all systems

build for all systems #146

Workflow file for this run

name: Tests
on: [push, pull_request]
jobs:
cases:
name: ${{ matrix.os }}, python${{ matrix.python-version }}, ${{ matrix.case-name }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- case-name: ubuntu-python3.10
os: ubuntu-latest
qutip-version: "@master"
python-version: "3.10"
- case-name: macOs-python3.10
os: macOS-latest
qutip-version: "@master"
python-version: "3.10"
- case-name: windows-python3.10
os: windows-latest
qutip-version: "@master"
python-version: "3.10"
- case-name: ubuntu-python3.11
os: ubuntu-latest
qutip-version: "@master"
python-version: "3.11"
- case-name: macOs-python3.11
os: macOS-latest
qutip-version: "@master"
python-version: "3.11"
- case-name: windows-python3.11
os: windows-latest
qutip-version: "@master"
python-version: "3.11"
- case-name: ubuntu-python3.12
os: ubuntu-latest
qutip-version: "@master"
python-version: "3.12"
- case-name: macOs-python3.12
os: macOS-latest
qutip-version: "@master"
python-version: "3.12"
- case-name: windows-python3.12
os: windows-latest
qutip-version: "@master"
python-version: "3.12"
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install QuTiP from GitHub
if: ${{ matrix.qutip-version == '@master'}}
run: |
python -m pip install 'git+https://github.com/qutip/qutip.git${{ matrix.qutip-version }}'
- name: Install qutip-qtrl from GitHub
if: ${{ matrix.qutip-version == '@master'}}
run: |
python -m pip install 'git+https://github.com/qutip/qutip-qtrl.git'
- name: Install fixed version jax and jaxlib
run: |
python -m pip install 'jax==0.4.28' 'jaxlib==0.4.28'
- name: Install qutip-jax from GitHub
if: ${{ matrix.qutip-version == '@master'}}
run: |
python -m pip install 'git+https://github.com/qutip/qutip-jax.git'
- name: Install qutip-qoc
# Installing in-place so that coveralls can locate the source code.
run: |
pip install -e .[full]
- name: Test with pytest and generate coverage report
run: |
pip install pytest-cov coveralls
pytest tests --strict-markers --cov=qutip_qoc --cov-report= --color=yes
- name: Upload to Coveralls
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
COVERALLS_PARALLEL: true
run: coveralls --service=github
doctest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -mpip install -r doc/requirements.txt
pip install .
- name: Test code snippets in the documentation
run: |
cd doc
make doctest
finalise:
name: Finalise coverage reporting
needs: [cases]
runs-on: ubuntu-latest
container: python:3-slim
steps:
- name: Finalise coverage reporting
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
run: |
python -m pip install coveralls
coveralls --service=github --finish