Files
cleveragents-core/features/coverage_threshold_config.feature
T
CoreRasurae cecca72b8e
CI / benchmark-publish (push) Has started running
CI / benchmark-regression (push) Has been skipped
CI / e2e_tests (push) Failing after 14s
CI / helm (push) Failing after 8s
CI / unit_tests (push) Failing after 21s
CI / typecheck (push) Failing after 32s
CI / build (push) Failing after 9s
CI / quality (push) Failing after 24s
CI / integration_tests (push) Failing after 15s
CI / security (push) Failing after 24s
CI / lint (push) Failing after 34s
CI / coverage (push) Has been skipped
CI / docker (push) Has been skipped
CI / push-validation (push) Successful in 20s
CI / status-check (push) Failing after 6s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Failing after 1m11s
CI / coverage (pull_request) Successful in 14m34s
CI / push-validation (pull_request) Successful in 36s
CI / typecheck (pull_request) Successful in 1m14s
CI / integration_tests (pull_request) Successful in 3m42s
CI / e2e_tests (pull_request) Successful in 4m26s
CI / unit_tests (pull_request) Successful in 6m29s
CI / build (pull_request) Successful in 59s
CI / lint (pull_request) Successful in 53s
CI / quality (pull_request) Successful in 56s
CI / security (pull_request) Successful in 1m19s
CI / helm (pull_request) Successful in 53s
CI / docker (pull_request) Successful in 1m46s
CI / status-check (pull_request) Successful in 3s
test(behave): Reduce the coverage level to 96.5%
2026-05-05 02:01:49 +00:00

59 lines
2.5 KiB
Gherkin

Feature: Coverage threshold configuration
The project enforces a minimum 96.5% code coverage threshold across multiple
configuration files. This feature validates that pyproject.toml, noxfile.py,
the CI workflow, and the nightly quality workflow are all correctly configured
to enforce and report coverage thresholds.
# -- pyproject.toml coverage configuration --
Scenario: Coverage run section exists in pyproject.toml
Given the pyproject toml file is loaded for coverage check
Then the coverage run section should exist
Scenario: Coverage source includes src directory
Given the pyproject toml file is loaded for coverage check
Then the coverage source should include "src"
Scenario: Coverage branch tracking is enabled
Given the pyproject toml file is loaded for coverage check
Then the coverage branch tracking should be enabled
Scenario: Coverage data file is stored under build directory
Given the pyproject toml file is loaded for coverage check
Then the coverage data file should be "build/.coverage"
Scenario: Coverage HTML report directory is under build
Given the pyproject toml file is loaded for coverage check
Then the coverage html directory should be "build/htmlcov"
Scenario: Coverage XML output is under build directory
Given the pyproject toml file is loaded for coverage check
Then the coverage xml output should be "build/coverage.xml"
Scenario: Coverage omit patterns exclude test directories
Given the pyproject toml file is loaded for coverage check
Then the coverage omit patterns should include "*/tests/*"
# -- noxfile.py coverage session --
Scenario: Noxfile defines a coverage_report session
Given the noxfile py is loaded for coverage check
Then the noxfile should define a coverage_report session
@tdd_issue @tdd_issue_4227
Scenario: Noxfile enforces fail-under threshold of at least 96.5
Given the noxfile py is loaded for coverage check
Then the noxfile should contain a fail-under threshold of at least 96.5
# -- CI workflow coverage enforcement --
Scenario: CI workflow references nox coverage_report session
Given the ci workflow file is loaded for coverage check
Then the ci workflow should reference nox coverage_report session
# -- Nightly quality workflow coverage enforcement --
Scenario: Nightly workflow enforces coverage threshold via --coverage-min
Given the nightly quality workflow file is loaded for coverage check
Then the nightly workflow should use a fail-under of at least 85