test+build: Django --since coverage; drop pytest-cov trap#95
Merged
Conversation
The _django_migrations_since dependency-graph logic (Django --since and --min-revision CLI scoping) had no test coverage. Add five tests exercising transitive-dependent selection, root selection, unknown-revision handling, and since/min_revision intersection. Raises django_detector.py from 76% to 86% and total coverage to 91%.
pytest-cov is never used — CI and CONTRIBUTING.md already measure coverage via 'coverage run -m pytest'. Keeping pytest-cov in dev deps invited 'pytest --cov', which under-reports coverage (~81% vs real ~91%): pytest_mrt is a pytest plugin imported before pytest-cov starts measuring, so all module-level code reads as uncovered. Swap it for 'coverage' so a plain '.[dev]' install ships the correct tool, and drop the now-redundant 'coverage' installs from the DB CI jobs.
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Two related coverage-quality changes.
1. Cover Django
--since/--min-revisionscoping_django_migrations_since(dependency-graph logic behindmrt check --since/--min-revisionfor Django) had zero tests despite being shipped. Adds five tests: transitive-dependent selection, root selection, unknown-revision, since ∩ min_revision intersection, and min_revision alone.2. Replace
pytest-covdev dep withcoveragepytest-covwas never used — CI and CONTRIBUTING.md already measure viacoverage run -m pytest. Keeping it invitedpytest --cov, which under-reports coverage (~81% vs real ~91%):pytest_mrtis a pytest plugin imported before pytest-cov starts measuring, so all module-level code reads as uncovered. Swapping tocoveragemakes a plain.[dev]install ship the right tool; also drops now-redundantcoverageinstalls from the DB CI jobs.Coverage
adapters/django_detector.py: 76% → 86%475 passed locally via
coverage run -m pytest.