Skip to content

tests

tests #99

Workflow file for this run

# Generated from:
# https://github.com/zopefoundation/meta/tree/master/config/pure-python
name: tests
on:
push:
pull_request:
schedule:
- cron: '0 12 * * 0' # run once a week on Sunday
# Allow to run this workflow manually from the Actions tab
workflow_dispatch:
env:
# Weirdly, this has to be a top-level key, not ``defaults.env``
PYTHONHASHSEED: 8675309
PYTHONUNBUFFERED: 1
PYTHONDONTWRITEBYTECODE: 1
PIP_UPGRADE_STRATEGY: eager
# Don't get warnings about Python 2 support being deprecated. We
# know. The env var works for pip 20.
PIP_NO_PYTHON_VERSION_WARNING: 1
PIP_NO_WARN_SCRIPT_LOCATION: 1
GEVENTSETUP_EV_VERIFY: 1
jobs:
build:
strategy:
# We want to see all failures:
fail-fast: false
matrix:
os:
- ["ubuntu", "ubuntu-latest"]
config:
# [Python version, tox env]
- ["pypy-3.11", "pypy3"]
- ["3.10", "py310"]
- ["3.11", "py311"]
- ["3.12", "coverage"]
- ["3.12", "docs"]
- ["3.12", "py312"]
- ["3.12", "lint"]
- ["3.13", "py313"]
- ["3.14", "py314"]
runs-on: ${{ matrix.os[1] }}
name: ${{ matrix.config[1] }}
steps:
- uses: actions/checkout@v5
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.config[0] }}
cache: 'pip'
cache-dependency-path: setup.py
- name: Install dependencies
run: |
python -m pip install -U pip wheel
pip install -U tox coverage
- name: Test
run: tox -e ${{ matrix.config[1] }}
- name: Coverage
if: matrix.config[1] == 'coverage'
run: |
pip install coveralls coverage-python-version
coveralls --service=github
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}