diff --git a/apps/codecov-api/compare/commands/compare/interactors/fetch_impacted_files.py b/apps/codecov-api/compare/commands/compare/interactors/fetch_impacted_files.py index 28756a04e7..a19120393f 100644 --- a/apps/codecov-api/compare/commands/compare/interactors/fetch_impacted_files.py +++ b/apps/codecov-api/compare/commands/compare/interactors/fetch_impacted_files.py @@ -137,4 +137,11 @@ def execute( else: impacted_files = comparison_report.impacted_files + has_uncovered_lines = filters.get("has_uncovered_lines") + if has_uncovered_lines is not None: + impacted_files = [ + f for f in impacted_files + if (f.misses_count > 0) == has_uncovered_lines + ] + return self._apply_filters(impacted_files, comparison, filters) diff --git a/apps/codecov-api/graphql_api/types/inputs/impacted_files_filters.graphql b/apps/codecov-api/graphql_api/types/inputs/impacted_files_filters.graphql index 2ca3d2d932..53762d2f7b 100644 --- a/apps/codecov-api/graphql_api/types/inputs/impacted_files_filters.graphql +++ b/apps/codecov-api/graphql_api/types/inputs/impacted_files_filters.graphql @@ -1,6 +1,7 @@ input ImpactedFilesFilters { ordering: ImpactedFilesOrdering hasUnintendedChanges: Boolean + hasUncoveredLines: Boolean flags: [String!] components: [String!] }