Browse Source

ensure coverage files are unique based on deprecated-tests setting

pull/15149/head
svlandeg 4 months ago
parent
commit
94200ddb74
  1. 24
      .github/workflows/test.yml

24
.github/workflows/test.yml

@ -50,7 +50,7 @@ jobs:
matrix: matrix:
os: [ windows-latest, macos-latest ] os: [ windows-latest, macos-latest ]
python-version: [ "3.14" ] python-version: [ "3.14" ]
deprecated-tests: [ "false" ] deprecated-tests: [ "no-deprecation" ]
uv-resolution: uv-resolution:
- highest - highest
starlette-src: starlette-src:
@ -61,33 +61,33 @@ jobs:
python-version: "3.10" python-version: "3.10"
coverage: coverage coverage: coverage
uv-resolution: lowest-direct uv-resolution: lowest-direct
deprecated-tests: "false" deprecated-tests: "no-deprecation"
- os: windows-latest - os: windows-latest
python-version: "3.12" python-version: "3.12"
coverage: coverage coverage: coverage
uv-resolution: lowest-direct uv-resolution: lowest-direct
deprecated-tests: "false" deprecated-tests: "no-deprecation"
- os: ubuntu-latest - os: ubuntu-latest
python-version: "3.13" python-version: "3.13"
coverage: coverage coverage: coverage
uv-resolution: highest uv-resolution: highest
deprecated-tests: "false" deprecated-tests: "no-deprecation"
- os: ubuntu-latest - os: ubuntu-latest
python-version: "3.13" python-version: "3.13"
uv-resolution: highest uv-resolution: highest
codspeed: codspeed codspeed: codspeed
deprecated-tests: "false" deprecated-tests: "no-deprecation"
- os: ubuntu-latest - os: ubuntu-latest
python-version: "3.14" python-version: "3.14"
coverage: coverage coverage: coverage
uv-resolution: highest uv-resolution: highest
starlette-src: starlette-git starlette-src: starlette-git
deprecated-tests: "false" deprecated-tests: "no-deprecation"
- os: ubuntu-latest - os: ubuntu-latest
python-version: "3.14" python-version: "3.14"
coverage: coverage coverage: coverage
uv-resolution: highest uv-resolution: highest
deprecated-tests: "true" deprecated-tests: "test-deprecation"
# - os: macos-latest # - os: macos-latest
# python-version: "3.14t" # python-version: "3.14t"
# coverage: coverage # coverage: coverage
@ -97,7 +97,7 @@ jobs:
python-version: "3.14t" python-version: "3.14t"
coverage: coverage coverage: coverage
uv-resolution: highest uv-resolution: highest
deprecated-tests: "false" deprecated-tests: "no-deprecation"
fail-fast: false fail-fast: false
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
env: env:
@ -127,20 +127,20 @@ jobs:
if: matrix.starlette-src == 'starlette-git' if: matrix.starlette-src == 'starlette-git'
run: uv pip install "git+https://github.com/Kludex/starlette@main" run: uv pip install "git+https://github.com/Kludex/starlette@main"
- name: Install deprecated libraries just for testing - name: Install deprecated libraries just for testing
if: matrix.deprecated-tests == 'true' if: matrix.deprecated-tests == 'test-deprecation'
run: uv pip install orjson ujson run: uv pip install orjson ujson
- run: mkdir coverage - run: mkdir coverage
- name: Test - name: Test
run: uv run --no-sync bash scripts/test-cov.sh run: uv run --no-sync bash scripts/test-cov.sh
env: env:
COVERAGE_FILE: coverage/.coverage.${{ runner.os }}-py${{ matrix.python-version }} COVERAGE_FILE: coverage/.coverage.${{ runner.os }}-py${{ matrix.python-version }}-${{ matrix.deprecated-tests}}
CONTEXT: ${{ runner.os }}-py${{ matrix.python-version }} CONTEXT: ${{ runner.os }}-py${{ matrix.python-version }}-${{ matrix.deprecated-tests}}
# Do not store coverage for all possible combinations to avoid file size max errors in Smokeshow # Do not store coverage for all possible combinations to avoid file size max errors in Smokeshow
- name: Store coverage files - name: Store coverage files
if: matrix.coverage == 'coverage' if: matrix.coverage == 'coverage'
uses: actions/upload-artifact@v7 uses: actions/upload-artifact@v7
with: with:
name: coverage-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/coverage/.coverage.*') }} name: coverage-${{ runner.os }}-${{ matrix.python-version }}-${{ matrix.deprecated-tests}}-${{ hashFiles('**/coverage/.coverage.*') }}
path: coverage path: coverage
include-hidden-files: true include-hidden-files: true

Loading…
Cancel
Save