@@ -4,7 +4,7 @@ on: [push, pull_request]
44
55jobs :
66 tests :
7- runs-on : ubuntu-latest
7+ runs-on : ${{ matrix.os }}
88 timeout-minutes : 15
99
1010 defaults :
@@ -13,10 +13,11 @@ jobs:
1313
1414 strategy :
1515 matrix :
16+ os : [ubuntu-latest, windows-latest]
1617 python-version : ["3.10", "3.11", "3.12", "3.13"]
1718
1819 concurrency :
19- group : ci-tests-${{ matrix.python-version }}-${{ github.ref }}
20+ group : ci-tests-${{ matrix.os }}-${{ matrix. python-version }}-${{ github.ref }}
2021 cancel-in-progress : true
2122
2223 steps :
@@ -31,22 +32,24 @@ jobs:
3132 auto-update-conda : true
3233 conda-solver : libmamba
3334
34- - name : Linting & Tests
35+ - name : Install dependencies
3536 run : |
3637 pip install poetry poetry-plugin-export
37-
3838 poetry config virtualenvs.create false
39-
4039 poetry export --with dev --extras dbc --format requirements.txt --output reqs.txt --without-hashes
41-
4240 pip install -r reqs.txt
4341 pip install -e ".[dbc]"
4442
45- pre-commit run --files pysus/**/*
43+ - name : Linting
44+ if : matrix.os == 'ubuntu-latest'
45+ run : pre-commit run --files pysus/**/*
4646
47- make test-pysus-with-coverage
47+ - name : Tests
48+ run : |
49+ poetry run pytest -vv pysus/tests/ --retries 3 --retry-delay 15 --cov=pysus --cov-report=xml:coverage.xml --cov-report=term-missing
4850
4951 - name : Upload coverage to Codecov
52+ if : matrix.os == 'ubuntu-latest'
5053 uses : codecov/codecov-action@v5
5154 with :
5255 files : ./coverage.xml
0 commit comments