Skip to content

Draft: Test/boost coverage percent

Suma Pullaiahgari requested to merge test/boost-coverage-percent into feature-final

What does this MR do and why?

This MR improves the overall test coverage of the project from ~76% to 100%.

Key Improvements

  • Added tests for previously untested modules
  • Increased coverage for critical services and utilities
  • Covered edge cases, async flows, and error handling paths
  • Ensured full execution coverage across all modules

Files Covered (Now at 100%)

Core Application

  • app.py

batch_mode

  • batch_mode/init.py
  • batch_mode/api_helper.py
  • batch_mode/batch_controller.py
  • batch_mode/batch_servie.py
  • batch_mode/batch_ui.py
  • batch_mode/client.py
  • batch_mode/file_reader.py
  • batch_mode/retry_helper.py

gitlab_utils

  • gitlab_utils/init.py
  • gitlab_utils/api_helper.py
  • gitlab_utils/batch.py
  • gitlab_utils/client.py
  • gitlab_utils/commits.py
  • gitlab_utils/description_quality.py
  • gitlab_utils/files_reader.py
  • gitlab_utils/groups.py
  • gitlab_utils/issues.py
  • gitlab_utils/merge_requests.py
  • gitlab_utils/network.py
  • gitlab_utils/parse_uvlock.py
  • gitlab_utils/projects.py
  • gitlab_utils/retry_helper.py
  • gitlab_utils/users.py

issues

  • issues/init.py
  • issues/issue_metrics.py
  • issues/issue_service.py
  • issues/issue_ui.py

modes

  • modes/init.py
  • modes/bad_issue.py
  • modes/bad_mrs_batch.py
  • modes/batch_mode.py
  • modes/compliance_mode.py
  • modes/user_profile.py

misc

  • repro_timeout.py
  • repro_timeout_v2.py

References

N/A


Screenshots or screen recordings

Before After
~76% coverage 100% coverageimage
image

How to set up and validate locally

  1. Install dependencies:

    pip install -r requirements.txt
  2. Run tests:

    pytest --cov
  3. Verify coverage:

    • Expected result: 100% total coverage

MR acceptance checklist

  • Tests added for all uncovered modules
  • Coverage increased from ~76% to 100%
  • Meets required threshold (95%)
  • No regression introduced
  • Code remains maintainable and testable

Merge request reports

Loading