From da439cd1fe4103bc09dfd44781f369dd86d700a2 Mon Sep 17 00:00:00 2001 From: CleverThis Date: Sat, 6 Jun 2026 23:48:12 -0400 Subject: [PATCH] fix(tests): update coverage job dependency assertions to unit_tests The coverage job in ci.yml was updated to depend on unit_tests only (removing lint/typecheck which are independent static-analysis jobs). Two BDD scenarios still asserted the old lint+typecheck dependency, causing unit_tests gate failures. Updated both scenarios and the step definition to assert the correct unit_tests dependency. ISSUES CLOSED: #1641 --- features/ci_workflow_validation.feature | 5 ++--- features/coverage_threshold_enforcement.feature | 4 ++-- features/steps/coverage_threshold_enforcement_steps.py | 10 +++------- 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/features/ci_workflow_validation.feature b/features/ci_workflow_validation.feature index 0e124184b..a98299000 100644 --- a/features/ci_workflow_validation.feature +++ b/features/ci_workflow_validation.feature @@ -54,11 +54,10 @@ Feature: CI workflow validation When I parse the CI workflow YAML Then the workflow env should set "PYTHON_VERSION" to "3.13" - Scenario: CI workflow coverage job depends on lint and typecheck + Scenario: CI workflow coverage job depends on unit_tests Given the CI workflow file at ".forgejo/workflows/ci.yml" When I parse the CI workflow YAML - Then the job "coverage" should depend on "lint" - And the job "coverage" should depend on "typecheck" + Then the job "coverage" should depend on "unit_tests" Scenario: All required nox sessions are referenced Given the CI workflow file at ".forgejo/workflows/ci.yml" diff --git a/features/coverage_threshold_enforcement.feature b/features/coverage_threshold_enforcement.feature index 33732eee1..99e2250d7 100644 --- a/features/coverage_threshold_enforcement.feature +++ b/features/coverage_threshold_enforcement.feature @@ -44,10 +44,10 @@ Feature: Coverage threshold enforcement When I parse the coverage job from the CI workflow Then the coverage job should run nox -s coverage_report - Scenario: CI workflow coverage job depends on lint and typecheck + Scenario: CI workflow coverage job depends on unit_tests Given the CI workflow file exists When I parse the coverage job from the CI workflow - Then the coverage job should depend on lint and typecheck + Then the coverage job should depend on unit_tests Scenario: Coverage report session emits CI-parseable summary on success Given the noxfile.py exists diff --git a/features/steps/coverage_threshold_enforcement_steps.py b/features/steps/coverage_threshold_enforcement_steps.py index 9ec900ff8..1bede38ab 100644 --- a/features/steps/coverage_threshold_enforcement_steps.py +++ b/features/steps/coverage_threshold_enforcement_steps.py @@ -186,17 +186,13 @@ def step_check_ci_coverage_nox(context: Any) -> None: ) -@then("the coverage job should depend on lint and typecheck") +@then("the coverage job should depend on unit_tests") def step_check_ci_coverage_deps(context: Any) -> None: job = context.ci_coverage_job needs = job.get("needs", []) - if "lint" not in needs: + if "unit_tests" not in needs: raise AssertionError( - f"CI coverage job does not depend on 'lint': needs={needs}" - ) - if "typecheck" not in needs: - raise AssertionError( - f"CI coverage job does not depend on 'typecheck': needs={needs}" + f"CI coverage job does not depend on 'unit_tests': needs={needs}" )