Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit a7ba993

Browse files
svlandegtiangologithub-actions[bot]
authored
✅ Expand test matrix to include Windows and MacOS (#14171)
Co-authored-by: Sebastián Ramírez <[email protected]> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 009c8af commit a7ba993

2 files changed

Lines changed: 38 additions & 13 deletions

File tree

.github/workflows/test.yml

Lines changed: 37 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -44,22 +44,44 @@ jobs:
4444
run: bash scripts/lint.sh
4545

4646
test:
47-
runs-on: ubuntu-latest
4847
strategy:
4948
matrix:
50-
python-version:
51-
- "3.14"
52-
- "3.13"
53-
- "3.12"
54-
- "3.11"
55-
- "3.10"
56-
- "3.9"
57-
- "3.8"
58-
pydantic-version: ["pydantic-v1", "pydantic-v2"]
59-
exclude:
60-
- python-version: "3.14"
49+
os: [ ubuntu-latest, windows-latest, macos-latest ]
50+
python-version: [ "3.14" ]
51+
pydantic-version: [ "pydantic-v2" ]
52+
coverage: ["coverage"]
53+
include:
54+
- os: macos-latest
55+
python-version: "3.8"
56+
pydantic-version: "pydantic-v1"
57+
coverage: coverage
58+
- os: windows-latest
59+
python-version: "3.8"
60+
pydantic-version: "pydantic-v2"
61+
coverage: coverage
62+
- os: ubuntu-latest
63+
python-version: "3.9"
64+
pydantic-version: "pydantic-v1"
65+
coverage: coverage
66+
- os: macos-latest
67+
python-version: "3.10"
68+
pydantic-version: "pydantic-v2"
69+
- os: windows-latest
70+
python-version: "3.11"
71+
pydantic-version: "pydantic-v1"
72+
- os: ubuntu-latest
73+
python-version: "3.12"
74+
pydantic-version: "pydantic-v2"
75+
- os: macos-latest
76+
python-version: "3.13"
6177
pydantic-version: "pydantic-v1"
78+
coverage: coverage
79+
- os: windows-latest
80+
python-version: "3.13"
81+
pydantic-version: "pydantic-v2"
82+
coverage: coverage
6283
fail-fast: false
84+
runs-on: ${{ matrix.os }}
6385
steps:
6486
- name: Dump GitHub context
6587
env:
@@ -96,10 +118,12 @@ jobs:
96118
env:
97119
COVERAGE_FILE: coverage/.coverage.${{ runner.os }}-py${{ matrix.python-version }}
98120
CONTEXT: ${{ runner.os }}-py${{ matrix.python-version }}
121+
# Do not store coverage for all possible combinations to avoid file size max errors in Smokeshow
99122
- name: Store coverage files
123+
if: matrix.coverage == 'coverage'
100124
uses: actions/upload-artifact@v5
101125
with:
102-
name: coverage-${{ matrix.python-version }}-${{ matrix.pydantic-version }}
126+
name: coverage-${{ runner.os }}-${{ matrix.python-version }}-${{ matrix.pydantic-version }}
103127
path: coverage
104128
include-hidden-files: true
105129

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,7 @@ source = [
196196
"tests",
197197
"fastapi"
198198
]
199+
relative_files = true
199200
context = '${CONTEXT}'
200201
dynamic_context = "test_function"
201202
omit = [

0 commit comments

Comments
 (0)