Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

coverage and our self-tests #4261

Open
3 tasks
Zac-HD opened this issue Feb 2, 2025 · 0 comments
Open
3 tasks

coverage and our self-tests #4261

Zac-HD opened this issue Feb 2, 2025 · 0 comments
Labels
tests/build/CI about testing or deployment *of* Hypothesis

Comments

@Zac-HD
Copy link
Member

Zac-HD commented Feb 2, 2025

Hypothesis requires our self-test suite to maintain 100% branch coverage of Hypothesis, after various exclude-patterns are applied, specifically from the coverage tox task which runs most of our tests under CPython 3.10 and has historically been separated out for performance reasons.

The excluded branches are a combination of version-specific code, integration with optional dependencies, cpython/pypy differences, and occasionally tricky code that just isn't worth the trouble to cover. But... we could combine coverage across CI tasks now, and from Python 3.12 onwards the sys.monitoring functionality allows for very low-overhead coverage collection.

So what if we took advantage of that?

  • enable coverage in all tasks that are (a) running in CI, and (b) have sys.monitoring for performance
  • add the aggregation job, and delete our current coverage job.
  • make whatever reductions to our nocover pragmas this enables
@Zac-HD Zac-HD added the tests/build/CI about testing or deployment *of* Hypothesis label Feb 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tests/build/CI about testing or deployment *of* Hypothesis
Projects
None yet
Development

No branches or pull requests

1 participant