diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 480f1feed..6ddbbbf29 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -40,7 +40,8 @@ jobs: persist-credentials: false - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 with: - python-version: "3.x" + # mddj does not yet support 3.15; use 3.14 for now + python-version: "3.14" - uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0 - parallel: @@ -82,7 +83,7 @@ jobs: - name: test run: | - tox run -m ci -- --junitxml pytest.{envname}.xml + tox run -m ci tox run -e cov_combine,cov_report - uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 diff --git a/scripts/aggregate-pytest-reports.py b/scripts/aggregate-pytest-reports.py index 7a8cf63b9..db872884d 100644 --- a/scripts/aggregate-pytest-reports.py +++ b/scripts/aggregate-pytest-reports.py @@ -25,13 +25,17 @@ def main(): nodename = f"{classname.replace('.', '/')}.py::{name}" if skip_node is not None: if "skipped" not in tests_by_name[nodename]: + print(f"found first skip of {nodename} in {filename}") tests_by_name[nodename]["skipped"] = True else: + print(f"found first run of {nodename} in {filename}") tests_by_name[nodename]["skipped"] = False else: if skip_node is not None: skipped_module_counts[name] += 1 + print("-- tally results") + skipped_modules = { modname for modname, count in skipped_module_counts.items() diff --git a/tox.ini b/tox.ini index 14facade0..21f6674da 100644 --- a/tox.ini +++ b/tox.ini @@ -12,7 +12,7 @@ skip_missing_interpreters = true minversion = 4.0.0 labels = - ci = py, py-notoml, py-tomli-format, py-json5, py-pyjson5 + ci = py-ci, py-format-ci, py-json5-ci, py-pyjson5-ci [testenv] description = "run tests with pytest" @@ -31,7 +31,8 @@ deps = pyjson5: pyjson5 format: jsonschema[format] commands = - coverage run -m pytest {posargs:--junitxml={envdir}/pytest.xml} + !ci: coverage run -m pytest {posargs:--junitxml={envdir}/pytest.xml} + ci: coverage run -m pytest -v --junitxml pytest.{envname}.xml depends = cov_clean [testenv:cov_clean]