Coverage report: 61%

Files Functions Classes

coverage.py v7.14.1, created at 2026-06-25 14:29 -0500

File function   statements missing excluded   coverage
src/pullapprove/__init__.py (no function)   0 0 0   100%
src/pullapprove/checklists.py ChecklistItem.notes_required_for_state   7 7 0   0%
src/pullapprove/checklists.py Checklist.compute_hash   6 6 0   0%
src/pullapprove/checklists.py (no function)   25 0 0   100%
src/pullapprove/cli.py cli   1 1 0   0%
src/pullapprove/cli.py init   7 7 0   0%
src/pullapprove/cli.py check   34 34 0   0%
src/pullapprove/cli.py match   43 43 0   0%
src/pullapprove/cli.py coverage   31 31 0   0%
src/pullapprove/cli.py (no function)   34 34 0   0%
src/pullapprove/config.py _has_nested_quantifiers   11 3 0   73%
src/pullapprove/config.py _contains_quantifier   10 5 0   50%
src/pullapprove/config.py _expand_aliases   28 0 0   100%
src/pullapprove/config.py _resolve_extends_path   7 0 0   100%
src/pullapprove/config.py _anchor_path   9 0 0   100%
src/pullapprove/config.py ScopeModel.validate_name   3 1 0   67%
src/pullapprove/config.py ScopeModel.validate_code_patterns   8 3 0   62%
src/pullapprove/config.py ScopeModel.validate_reviewers_for_require   8 0 0   100%
src/pullapprove/config.py ScopeModel.printed_name   6 6 0   0%
src/pullapprove/config.py ScopeModel.__eq__   1 1 0   0%
src/pullapprove/config.py ScopeModel.matches_path   1 0 0   100%
src/pullapprove/config.py ScopeModel.matches_code   13 0 0   100%
src/pullapprove/config.py ScopeModel.matches_author   12 0 0   100%
src/pullapprove/config.py ConfigModel.validate_unique_scope_names   6 0 0   100%
src/pullapprove/config.py ConfigModel.validate_extends   5 1 0   80%
src/pullapprove/config.py ConfigModel.compiled_config   14 0 0   100%
src/pullapprove/config.py ConfigModel._merged_data   33 0 0   100%
src/pullapprove/config.py ConfigModel.from_filesystem   2 0 0   100%
src/pullapprove/config.py ConfigModel.from_content   1 0 0   100%
src/pullapprove/config.py ConfigModel.from_data   1 0 0   100%
src/pullapprove/config.py _ConfigModelsBase.from_config_models   4 0 0   100%
src/pullapprove/config.py _ConfigModelsBase.get_config_models   1 0 0   100%
src/pullapprove/config.py _ConfigModelsBase.__bool__   1 0 0   100%
src/pullapprove/config.py _ConfigModelsBase.__getitem__   1 0 0   100%
src/pullapprove/config.py _ConfigModelsBase.__contains__   1 0 0   100%
src/pullapprove/config.py _ConfigModelsBase.__len__   1 1 0   0%
src/pullapprove/config.py ConfigModels.from_configs_data   5 0 0   100%
src/pullapprove/config.py ConfigModels.add_config   1 0 0   100%
src/pullapprove/config.py ConfigModels.compiled   6 0 0   100%
src/pullapprove/config.py CompiledConfigModels.closest_config   8 1 0   88%
src/pullapprove/config.py CompiledConfigModels.get_default_large_scale_change   4 1 0   75%
src/pullapprove/config.py CompiledConfigModels.filter_for_pullrequest   8 0 0   100%
src/pullapprove/config.py (no function)   101 0 0   100%
src/pullapprove/diff.py DiffFile.__init__   2 0 0   100%
src/pullapprove/diff.py DiffFile.__repr__   1 1 0   0%
src/pullapprove/diff.py DiffFile.is_move   1 1 0   0%
src/pullapprove/diff.py DiffHunk.__init__   4 0 0   100%
src/pullapprove/diff.py DiffCode.__init__   4 0 0   100%
src/pullapprove/diff.py DiffCode.is_addition   1 0 0   100%
src/pullapprove/diff.py DiffCode.is_deletion   1 0 0   100%
src/pullapprove/diff.py DiffCode.is_context   1 1 0   0%
src/pullapprove/diff.py DiffCode.line_number   3 1 0   67%
src/pullapprove/diff.py DiffCode.__str__   1 1 0   0%
src/pullapprove/diff.py DiffCode.__repr__   1 1 0   0%
src/pullapprove/diff.py DiffCode.raw   1 0 0   100%
src/pullapprove/diff.py parse_diff_file_line   5 0 0   100%
src/pullapprove/diff.py parse_diff_hunk_line   5 0 0   100%
src/pullapprove/diff.py iterate_diff_parts   35 1 0   97%
src/pullapprove/diff.py (no function)   21 0 0   100%
src/pullapprove/exceptions.py LargeScaleChangeException.__init__   1 1 0   0%
src/pullapprove/exceptions.py (no function)   2 0 0   100%
src/pullapprove/git.py git_root   2 2 0   0%
src/pullapprove/git.py git_ls_files   6 6 0   0%
src/pullapprove/git.py git_ls_changes   6 6 0   0%
src/pullapprove/git.py git_diff_stream   5 5 0   0%
src/pullapprove/git.py (no function)   7 7 0   0%
src/pullapprove/matches.py match_path   7 0 0   100%
src/pullapprove/matches.py match_code   9 1 0   89%
src/pullapprove/matches.py match_files   2 2 0   0%
src/pullapprove/matches.py match_files._iterate   11 11 0   0%
src/pullapprove/matches.py iterate_diff   27 4 0   85%
src/pullapprove/matches.py iterate_diff.yield_code_diffs   8 0 0   100%
src/pullapprove/matches.py match_diff   9 3 0   67%
src/pullapprove/matches.py match_diff.iterate   11 2 0   82%
src/pullapprove/matches.py ChangeMatches.as_dict   1 1 0   0%
src/pullapprove/matches.py ChangeMatches.__bool__   1 1 0   0%
src/pullapprove/matches.py ChangeMatches.from_config_matches   15 1 0   93%
src/pullapprove/matches.py ChangeMatches.from_large_scale_change   1 1 0   0%
src/pullapprove/matches.py ScopePathMatch.add_scope   4 0 0   100%
src/pullapprove/matches.py ScopeCodeMatch.printed_location   3 3 0   0%
src/pullapprove/matches.py ScopeCodeMatch.add_scope   4 4 0   0%
src/pullapprove/matches.py ScopeCodeMatch.compute_location_id   5 0 0   100%
src/pullapprove/matches.py (no function)   54 0 0   100%
src/pullapprove/printer.py get_color_for_name   2 2 0   0%
src/pullapprove/printer.py get_scope_display   3 3 0   0%
src/pullapprove/printer.py print_scope_badge   4 4 0   0%
src/pullapprove/printer.py MatchesPrinter.__init__   2 2 0   0%
src/pullapprove/printer.py MatchesPrinter.print_by_path   37 37 0   0%
src/pullapprove/printer.py MatchesPrinter.print_by_scope   37 37 0   0%
src/pullapprove/printer.py MatchesPrinter._get_paths_for_scope   5 5 0   0%
src/pullapprove/printer.py MatchesPrinter._get_code_only_files_for_scope   6 6 0   0%
src/pullapprove/printer.py MatchesPrinter._get_file_code_patterns_simple   11 11 0   0%
src/pullapprove/printer.py MatchesPrinter._get_file_code_patterns_simple_for_scope   16 16 0   0%
src/pullapprove/printer.py (no function)   17 17 2   0%
src/pullapprove/results_migrations.py migrate_resview_results_scopes   5 1 0   80%
src/pullapprove/results_migrations.py migrate_drop_config_branches   5 0 0   100%
src/pullapprove/results_migrations.py migrate_drop_branch_fields   15 0 0   100%
src/pullapprove/results_migrations.py migrate_drop_reviewed_for   11 0 0   100%
src/pullapprove/results_migrations.py migrate_unwrap_review_results   6 0 0   100%
src/pullapprove/results_migrations.py migrate_drop_path_code_reviews   5 0 0   100%
src/pullapprove/results_migrations.py ResultsMigrator.current_version   1 0 0   100%
src/pullapprove/results_migrations.py ResultsMigrator.migrate   5 0 0   100%
src/pullapprove/results_migrations.py (no function)   14 0 0   100%
Total     1004 395 2   61%

No items found using the specified filter.