Deprecate Python 3.7 #441
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: test | |
on: | |
push: | |
paths: | |
- 'pyproject.toml' | |
- '**.py' | |
- 'tests/**' | |
- '.github/workflows/run-tests.yml' | |
# Cancel existing executions when new commits are pushed onto the branch | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
linting: | |
name: Linting | |
runs-on: ubuntu-latest | |
steps: | |
#---------------------------------------------- | |
# check-out repo and set-up python | |
#---------------------------------------------- | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.9' | |
- run: | | |
python -m pip install .[docs,test,dev] | |
- run: bash scripts/check_syntax.sh | |
test: | |
name: Tests of general module | |
needs: linting | |
strategy: | |
fail-fast: true | |
matrix: | |
os: [ "ubuntu-latest" ] | |
python-version: [ "3.8", "3.9", "3.12" ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
#---------------------------------------------- | |
# check-out repo and set-up python | |
#---------------------------------------------- | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Set up python ${{ matrix.python-version }} | |
id: setup-python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- run: | | |
python -m pip install .[test] | |
- name: Run tests | |
run: bash scripts/check_coverage.sh | |
- name: Upload coverage | |
if: ${{ matrix.python-version == '3.9' && matrix.os == 'ubuntu-latest' }} | |
uses: codecov/codecov-action@v1 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} # Only required for private repositories | |
file: ./coverage.xml | |
fail_ci_if_error: true | |
classy: | |
name: Tests for CLASS interfaces | |
needs: test | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
steps: | |
#---------------------------------------------- | |
# check-out repo and set-up python | |
#---------------------------------------------- | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.9' | |
- name: Install project and CLASS | |
run: | | |
python -m pip install .[test] | |
python -m pip install Cython | |
git clone --depth 1 --branch feature/conda https://github.com/JCGoran/class_public && cd class_public && make classy && cd - | |
- name: Run CLASS tests | |
run: python -m pytest -v tests/test_classy_interfaces.py | |
coffe: | |
name: Tests for COFFE interfaces | |
needs: test | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.9' | |
- name: Install project and COFFE | |
run: | | |
python -m pip install .[test] | |
python -m pip install coffe | |
- name: Run COFFE tests | |
run: python -m pytest -v tests/test_coffe_interfaces.py | |
camb: | |
name: Tests for CAMB interfaces | |
needs: test | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.9' | |
- name: Install project and CAMB | |
run: | | |
python -m pip install .[test] | |
python -m pip install camb | |
- name: Run CAMB tests | |
run: python -m pytest -v tests/test_camb_interfaces.py |