|
9 | 9 |
|
10 | 10 | jobs: |
11 | 11 | test: |
12 | | - runs-on: ubuntu-latest |
| 12 | + runs-on: ${{ matrix.os }} |
| 13 | + strategy: |
| 14 | + matrix: |
| 15 | + os: [ubuntu-latest, macos-latest, windows-latest] |
| 16 | + python-version: ['3.9', '3.10', '3.12', '3.13'] |
13 | 17 |
|
14 | 18 | steps: |
15 | 19 | - uses: actions/checkout@v4 |
16 | | - - name: Set up Python 3.12 |
| 20 | + - name: Set up Python ${{ matrix.python-version }} |
17 | 21 | uses: actions/setup-python@v4 |
18 | 22 | with: |
19 | | - python-version: '3.12' |
| 23 | + python-version: ${{ matrix.python-version }} |
20 | 24 | cache: 'pip' |
21 | | - - name: Debug environment |
22 | | - run: | |
23 | | - echo "=== Environment Debug ===" |
24 | | - python --version |
25 | | - pip --version |
26 | | - ls -la |
27 | | - echo "=== End Debug ===" |
28 | | - |
29 | 25 | - name: Install dependencies |
30 | 26 | run: | |
31 | | - echo "=== Installing dependencies ===" |
32 | 27 | python -m pip install --upgrade pip |
33 | 28 | pip install -r requirements.txt |
34 | | - echo "=== Dependencies installed ===" |
35 | 29 | - name: Run tests and linting |
36 | 30 | run: | |
37 | | - echo "Running Black formatting check..." |
38 | 31 | black --check githubauthlib tests |
39 | | - echo "Running isort import sorting check..." |
40 | 32 | isort --check githubauthlib tests |
41 | | - echo "Running flake8 linting..." |
42 | 33 | flake8 githubauthlib tests |
43 | | - echo "Running pytest with coverage..." |
44 | | - pytest tests/ --cov=githubauthlib --cov-report=xml --cov-fail-under=90 -v |
| 34 | + pytest tests/ --cov=githubauthlib --cov-report=xml --cov-fail-under=90 |
45 | 35 |
|
46 | 36 | publish: |
47 | 37 | needs: test |
|
0 commit comments