2023-03-25 20:24:12 +01:00
|
|
|
name: Test
|
|
|
|
|
|
|
|
on:
|
|
|
|
workflow_dispatch:
|
|
|
|
workflow_call:
|
|
|
|
|
|
|
|
permissions:
|
|
|
|
contents: read
|
|
|
|
|
2023-04-29 22:57:01 +02:00
|
|
|
env:
|
|
|
|
PIP_DISABLE_PIP_VERSION_CHECK: 1
|
|
|
|
|
2023-03-25 20:24:12 +01:00
|
|
|
jobs:
|
|
|
|
tests:
|
|
|
|
name: Python tests
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
2023-09-04 20:34:54 +02:00
|
|
|
uses: actions/checkout@v4
|
2023-03-25 20:24:12 +01:00
|
|
|
- name: Set up Python
|
2023-12-11 19:10:13 +01:00
|
|
|
uses: actions/setup-python@v5
|
2023-03-25 20:24:12 +01:00
|
|
|
with:
|
2023-10-24 10:54:53 +02:00
|
|
|
python-version: '3.12'
|
2023-03-25 20:24:12 +01:00
|
|
|
cache: pip
|
|
|
|
- name: Install dependencies
|
|
|
|
run: |
|
|
|
|
pip install pip-tools
|
|
|
|
pip-sync requirements.txt requirements-dev.txt
|
2023-03-25 20:39:29 +01:00
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install -y --no-install-recommends gettext
|
2023-03-25 20:24:12 +01:00
|
|
|
- name: Setup pre-commit cache
|
2024-01-22 19:44:19 +01:00
|
|
|
uses: actions/cache@v4
|
2023-03-25 20:24:12 +01:00
|
|
|
with:
|
|
|
|
path: ~/.cache/pre-commit
|
|
|
|
key: pre-commit-3|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml') }}
|
|
|
|
- name: Check pre-commit
|
|
|
|
run: pre-commit run --show-diff-on-failure --color=always --all-files
|
|
|
|
- name: Test
|
2023-03-25 20:32:44 +01:00
|
|
|
run: inv test-cov
|
2023-03-25 20:24:12 +01:00
|
|
|
working-directory: ./src/
|