Skip to content

tests

tests #5

Workflow file for this run

name: tests
on:
push:
branches: [master]
pull_request:
workflow_dispatch:
# Windows defaults to cp1252, and the suite reads Zircolite's UTF-8 output --
# the emoji in the argparse group names alone are enough to break it. Zircolite
# itself never relies on the platform default: every open() in the package names
# its encoding. This puts the harness on the same footing rather than papering
# over a product bug.
env:
PYTHONUTF8: "1"
jobs:
tests:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: ["3.10", "3.13"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- uses: pdm-project/setup-pdm@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: pdm install --dev
# No `|| true`: the suite exists to fail the build. Test fixtures are
# tracked, so a missing one is a broken checkout and must fail too.
- name: Run tests
run: pdm run pytest