Skip to content

Commit 0f097b9

Browse files
committed
Add CI workflow for testing code
1 parent 2d813ba commit 0f097b9

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

.github/workflows/ci-testing.yaml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Test code
2+
3+
on:
4+
# Trigger the workflow on push
5+
push:
6+
# Every branch
7+
branches:
8+
- '**'
9+
# But do not run this workflow on creating a new tag starting with 'v', e.g. 'v1.0.3' (see pypi-publish.yml)
10+
tags-ignore:
11+
- 'v*'
12+
# Trigger the workflow on pull request
13+
pull_request:
14+
branches:
15+
- '**'
16+
# Allows you to run this workflow manually from the Actions tab
17+
workflow_dispatch:
18+
19+
# Allow only one concurrent workflow, skipping runs queued between the run in-progress and latest queued.
20+
# And cancel in-progress runs.
21+
concurrency:
22+
group:
23+
${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
24+
cancel-in-progress: true
25+
26+
jobs:
27+
test-code:
28+
29+
strategy:
30+
fail-fast: false
31+
matrix:
32+
os: [ubuntu-24.04, windows-2022, macos-13, macos-14]
33+
python-version: ['3.12']
34+
35+
runs-on: ${{ matrix.os }}
36+
37+
steps:
38+
- name: Checkout repository
39+
uses: actions/checkout@v4
40+
41+
- name: Set up Python ${{ matrix.python-version }}
42+
uses: actions/setup-python@v5
43+
with:
44+
python-version: ${{ matrix.python-version }}
45+
46+
- name: Upgrade package installer for Python
47+
run: python -m pip install --upgrade pip
48+
49+
- name: Install Python dependencies
50+
run: python -m pip install -r requirements.txt
51+
52+
- name: Run Python tests
53+
run: PYTHONPATH=$(pwd)/src python -m pytest tests/ --color=yes

0 commit comments

Comments
 (0)