diff --git a/.coveragerc b/.coveragerc index 37a0bfdf9..6d2afd933 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,5 +1,6 @@ [run] branch = True +relative_files = True [report] exclude_lines = diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9fc2214bd..4b73c6c61 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -45,23 +45,23 @@ jobs: - name: upload using codecovcli if: ${{ !cancelled() && !github.event.pull_request.head.repo.fork && github.repository_owner == 'codecov' }} run: | - docker-compose exec shared codecovcli -v upload-process --flag shared-docker-uploader --token ${{ secrets.CODECOV_ORG_TOKEN }} --fail-on-error - docker-compose exec shared codecovcli -v do-upload --report-type "test_results" --flag shared-docker-uploader --token ${{ secrets.CODECOV_ORG_TOKEN }} --fail-on-error + docker-compose exec shared codecovcli -v upload-process --flag shared-docker-uploader --file tests/unit.coverage.xml --token ${{ secrets.CODECOV_ORG_TOKEN }} --fail-on-error + docker-compose exec shared codecovcli -v do-upload --report-type "test_results" --flag shared-docker-uploader --file tests/unit.junit.xml --token ${{ secrets.CODECOV_ORG_TOKEN }} --fail-on-error - name: upload using codecovcli staging if: ${{ !cancelled() && !github.event.pull_request.head.repo.fork && github.repository_owner == 'codecov' }} run: | - docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_STAGING_URL }} upload-process --flag shared-docker-uploader --token ${{ secrets.CODECOV_ORG_TOKEN_STAGING }} --fail-on-error - docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_STAGING_URL }} do-upload --report-type "test_results" --flag shared-docker-uploader --token ${{ secrets.CODECOV_ORG_TOKEN_STAGING }} || true + docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_STAGING_URL }} upload-process --flag shared-docker-uploader --file tests/unit.coverage.xml --token ${{ secrets.CODECOV_ORG_TOKEN_STAGING }} --fail-on-error + docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_STAGING_URL }} do-upload --report-type "test_results" --flag shared-docker-uploader --file tests/unit.junit.xml --token ${{ secrets.CODECOV_ORG_TOKEN_STAGING }} || true - name: upload using codecovcli qa if: ${{ !cancelled() && !github.event.pull_request.head.repo.fork && github.repository_owner == 'codecov' }} run: | - docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_QA_URL }} upload-process --flag shared-docker-uploader --token ${{ secrets.CODECOV_QA_TOKEN }} --fail-on-error - docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_QA_URL }} do-upload --report-type "test_results" --flag shared-docker-uploader --token ${{ secrets.CODECOV_QA_TOKEN }} --fail-on-error + docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_QA_URL }} upload-process --flag shared-docker-uploader --file tests/unit.coverage.xml --token ${{ secrets.CODECOV_QA_TOKEN }} --fail-on-error + docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_QA_URL }} do-upload --report-type "test_results" --flag shared-docker-uploader --file tests/unit.junit.xml --token ${{ secrets.CODECOV_QA_TOKEN }} --fail-on-error - name: upload using codecovcli public qa if: ${{ !cancelled() && !github.event.pull_request.head.repo.fork && github.repository_owner == 'codecov' }} run: | - docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_PUBLIC_QA_URL }} upload-process --flag shared-docker-uploader --token ${{ secrets.CODECOV_PUBLIC_QA_TOKEN }} --fail-on-error - docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_PUBLIC_QA_URL }} do-upload --report-type "test_results" --flag shared-docker-uploader --token ${{ secrets.CODECOV_PUBLIC_QA_TOKEN }} || true + docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_PUBLIC_QA_URL }} upload-process --flag shared-docker-uploader --file tests/unit.coverage.xml --token ${{ secrets.CODECOV_PUBLIC_QA_TOKEN }} --fail-on-error + docker-compose exec shared codecovcli -v -u ${{ secrets.CODECOV_PUBLIC_QA_URL }} do-upload --report-type "test_results" --flag shared-docker-uploader --file tests/unit.junit.xml --token ${{ secrets.CODECOV_PUBLIC_QA_TOKEN }} || true diff --git a/.gitignore b/.gitignore index b11d26a07..5d3c251a1 100644 --- a/.gitignore +++ b/.gitignore @@ -52,6 +52,8 @@ coverage.xml .pytest_cache/ cover/ .codspeed +*.junit.xml +*.coverage.xml # Translations *.mo diff --git a/Makefile b/Makefile index 4fe13f9bb..712684279 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,8 @@ export CODECOV_TOKEN=${CODECOV_UPLOAD_TOKEN} .ONESHELL: test: - docker compose exec shared uv run pytest --cov=./ + # Emit coverage/junit files inside the bind-mounted `test` directory + docker compose exec shared uv run pytest --cov-report=xml:tests/unit.coverage.xml --junitxml=tests/unit.junit.xml -o junit_family=legacy test.path: docker compose exec shared uv run pytest $(TEST_PATH) @@ -43,7 +44,8 @@ test_env.up: docker compose up -d test_env.test: - docker compose exec shared uv run pytest --cov=./ --junitxml=junit.xml + # Emit coverage/junit files inside the bind-mounted `test` directory + docker compose exec shared uv run pytest --cov ./shared --cov-report=xml:tests/unit.coverage.xml --junitxml=tests/unit.junit.xml -o junit_family=legacy test_env.down: - docker compose down \ No newline at end of file + docker compose down diff --git a/docker-compose.yml b/docker-compose.yml index 0abd22b5d..51d8c1c5b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -18,6 +18,7 @@ services: volumes: - ./shared/:/app/shared - ./tests/:/app/tests + - ./.coveragerc:/app/.coveragerc postgres: image: postgres:14-alpine