From d9c1f1991969e99791de75b2bc935e6445bc5dcd Mon Sep 17 00:00:00 2001 From: lrjball <50599110+lrjball@users.noreply.github.com> Date: Thu, 28 May 2020 19:51:44 +0100 Subject: [PATCH] bpo-40474: Updated coverage.yml to better report coverage stats (#19851) Currently modules which are imported early are misreported in coverage. A fix is documented in the devguide, but the fix wasn't being used in CI. --- .github/workflows/coverage.yml | 2 ++ .travis.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 4f46cbf1100..035348e8a69 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -52,6 +52,7 @@ jobs: python -m pip install -U coverage python -m pip install -r Misc/requirements-test.txt python -m test.pythoninfo + export PYTHONPATH=`find .venv -name fullcoverage` - name: 'Tests with coverage' run: > source ./.venv/bin/activate && @@ -67,6 +68,7 @@ jobs: || true - name: 'Publish code coverage results' run: | + export PYTHONPATH= source ./.venv/bin/activate bash <(curl -s https://codecov.io/bash) -y .github/codecov.yml env: diff --git a/.travis.yml b/.travis.yml index 133385fbf5c..5d57150e61c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -89,11 +89,13 @@ matrix: - ./venv/bin/python -m pip install -U coverage - ./venv/bin/python -m pip install -r Misc/requirements-test.txt - ./venv/bin/python -m test.pythoninfo + - export PYTHONPATH=`find venv -name fullcoverage` script: # Skip tests that re-run the entire test suite. - xvfb-run ./venv/bin/python -m coverage run --branch --pylib -m test --fail-env-changed -uall,-cpu -x test_multiprocessing_fork -x test_multiprocessing_forkserver -x test_multiprocessing_spawn -x test_concurrent_futures || true after_script: # Probably should be after_success once test suite updated to run under coverage.py. # Make the `coverage` command available to Codecov w/ a version of Python that can parse all source files. + - export PYTHONPATH= - source ./venv/bin/activate - bash <(curl -s https://codecov.io/bash) -y .github/codecov.yml - name: "Test code coverage (C)"