-
Notifications
You must be signed in to change notification settings - Fork 29
38 lines (33 loc) · 1.32 KB
/
test.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# This is a basic workflow to help you get started with Actions
name: Test PyGLM on various systems and Python versions
# Controls when the workflow will run
on: [push, pull_request, workflow_dispatch]
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
test-build:
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install pip, build and pytest
run: |
python -m pip install pip --upgrade
pip install pytest
pip install build
- name: Build PyGLM
run: python -m build
- name: Install PyGLM
run: python -c "import os, glob, subprocess; wheels = glob.glob('dist/*.whl'); subprocess.check_call(['pip', 'install', wheels[0]])"
- name: Test with pytest
run: pytest test/PyGLM_test.py -v