Coverage report of fpdf2_textindex: 80.07%

Files Functions Classes

coverage.py v7.13.5, created at 2026-04-24 15:45 +0000

      Statements   Branches   Total
File function   coverage statements missing excluded   coverage branches partial   coverage
fpdf2_textindex / __init__.py (no function)   100.00% 14 0 0   100.00% 0 0   100.00%
fpdf2_textindex / _fpdf / __init__.py (no function)   100.00% 2 0 0   100.00% 0 0   100.00%
fpdf2_textindex / _fpdf / _fpdf.py FPDF._disable_writing   88.24% 17 2 0   75.00% 4 1   85.71%
fpdf2_textindex / _fpdf / _fpdf.py FPDF._parse_chars   56.35% 126 55 0   52.44% 82 15   54.81%
fpdf2_textindex / _fpdf / _fpdf.py FPDF._parse_chars.frag   53.33% 15 7 0   50.00% 2 1   52.94%
fpdf2_textindex / _fpdf / _fpdf.py FPDF._render_styled_text_line   74.74% 190 48 0   65.62% 128 34   71.07%
fpdf2_textindex / _fpdf / _fpdf.py (no function)   100.00% 39 0 0   100.00% 0 0   100.00%
fpdf2_textindex / _fpdf / line_break.py CurrentLine.add_character   84.21% 19 3 0   71.43% 14 4   78.79%
fpdf2_textindex / _fpdf / line_break.py MultiLineBreak.get_line   82.61% 69 12 0   78.57% 42 3   81.08%
fpdf2_textindex / _fpdf / line_break.py (no function)   100.00% 25 0 0   100.00% 0 0   100.00%
fpdf2_textindex / alias.py AliasRegistry.__init__   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / alias.py AliasRegistry.__getitem__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / alias.py AliasRegistry.__iter__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / alias.py AliasRegistry.__len__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / alias.py AliasRegistry.__repr__   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / alias.py AliasRegistry.define   66.67% 9 3 0   50.00% 4 2   61.54%
fpdf2_textindex / alias.py AliasRegistry.define_or_replace_from_label_path   38.46% 26 16 0   35.71% 14 1   37.50%
fpdf2_textindex / alias.py AliasRegistry._replace_match   100.00% 5 0 0   100.00% 2 0   100.00%
fpdf2_textindex / alias.py AliasRegistry.replace_aliases   100.00% 3 0 0   100.00% 2 0   100.00%
fpdf2_textindex / alias.py AliasRegistry.strip_alias   100.00% 8 0 0   100.00% 2 0   100.00%
fpdf2_textindex / alias.py (no function)   100.00% 19 0 1   100.00% 0 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList.__init__   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList.__getitem__   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList.__getitem__   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList.__getitem__   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList.__len__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / concordance.py ConcordanceList.__repr__   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList.from_file   66.67% 12 4 0   50.00% 2 1   64.29%
fpdf2_textindex / concordance.py ConcordanceList._parse_file   79.17% 24 5 0   68.75% 16 5   75.00%
fpdf2_textindex / concordance.py ConcordanceList.parse_text   100.00% 10 0 0   100.00% 2 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList._exclude_ranges   100.00% 6 0 0   100.00% 2 0   100.00%
fpdf2_textindex / concordance.py ConcordanceList._match_terms   88.00% 25 3 0   75.00% 12 3   83.78%
fpdf2_textindex / concordance.py (no function)   100.00% 25 0 5   100.00% 0 0   100.00%
fpdf2_textindex / constants.py (no function)   100.00% 26 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py _LabelPathABC.label_path   100.00% 0 0 2   100.00% 0 0   100.00%
fpdf2_textindex / interface.py _LabelPathABC.joined_label_path   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py Alias.__repr__   100.00% 0 0 4   100.00% 0 0   100.00%
fpdf2_textindex / interface.py CrossReference.__str__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / interface.py CrossReference.__repr__   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / interface.py CrossReference.link   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py CrossReferenceType.__str__   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py CrossReferenceType._missing_   0.00% 5 5 0   0.00% 4 0   0.00%
fpdf2_textindex / interface.py Node.__post_init__   100.00% 4 0 0   100.00% 2 0   100.00%
fpdf2_textindex / interface.py Node.__bool__   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py Node.__iter__   100.00% 2 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py Node.__hash__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / interface.py Node.__repr__   100.00% 0 0 11   100.00% 0 0   100.00%
fpdf2_textindex / interface.py Node.__str__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / interface.py Node.children   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / interface.py Node.depth   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py Node.label_path   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py Node.add_child   60.00% 5 2 0   50.00% 2 1   57.14%
fpdf2_textindex / interface.py Node.get_child   100.00% 4 0 0   100.00% 4 0   100.00%
fpdf2_textindex / interface.py Node.iter_children   100.00% 2 0 0   100.00% 2 0   100.00%
fpdf2_textindex / interface.py Node.iter_parents   100.00% 6 0 0   100.00% 4 0   100.00%
fpdf2_textindex / interface.py Reference.start_link   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py Reference.end_link   100.00% 3 0 0   100.00% 2 0   100.00%
fpdf2_textindex / interface.py TextIndexEntry.__hash__   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / interface.py TextIndexEntry.children   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / interface.py TextIndexEntry.sort_label   100.00% 5 0 0   100.00% 2 0   100.00%
fpdf2_textindex / interface.py TextIndexEntry.add_cross_reference   58.33% 12 5 0   70.00% 10 1   63.64%
fpdf2_textindex / interface.py TextIndexEntry.add_reference   22.22% 9 7 0   12.50% 8 1   17.65%
fpdf2_textindex / interface.py TextIndexEntry.update_latest_reference_end   66.67% 6 2 0   75.00% 4 1   70.00%
fpdf2_textindex / interface.py (no function)   100.00% 116 0 7   100.00% 0 0   100.00%
fpdf2_textindex / md_emphasis.py MDEmphasis.font_style   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / md_emphasis.py MDEmphasis.marker   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / md_emphasis.py MDEmphasis.text_emphasis   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / md_emphasis.py MDEmphasis.format   100.00% 3 0 0   100.00% 0 0   100.00%
fpdf2_textindex / md_emphasis.py MDEmphasis.parse   78.57% 14 3 0   75.00% 8 2   77.27%
fpdf2_textindex / md_emphasis.py MDEmphasis.remove   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / md_emphasis.py (no function)   100.00% 32 0 5   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.__init__   100.00% 6 0 0   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.__iter__   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.__len__   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.__repr__   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.aliases   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / parser.py TextIndexParser.entries   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.last_directive_id   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.last_index_id   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser.entry_at_label_path   84.62% 13 2 0   83.33% 6 1   84.21%
fpdf2_textindex / parser.py TextIndexParser.parse_text   89.36% 47 5 0   85.71% 14 2   88.52%
fpdf2_textindex / parser.py TextIndexParser._create_link   100.00% 2 0 0   100.00% 0 0   100.00%
fpdf2_textindex / parser.py TextIndexParser._parse_cross_ref   100.00% 30 0 2   100.00% 14 0   100.00%
fpdf2_textindex / parser.py TextIndexParser._parse_final_marker   100.00% 10 0 0   100.00% 4 0   100.00%
fpdf2_textindex / parser.py TextIndexParser._parse_label   100.00% 13 0 0   90.00% 10 1   95.65%
fpdf2_textindex / parser.py TextIndexParser._parse_label_path   85.71% 21 3 0   87.50% 8 1   86.21%
fpdf2_textindex / parser.py TextIndexParser._parse_sort_key   100.00% 9 0 0   100.00% 2 0   100.00%
fpdf2_textindex / parser.py TextIndexParser._parse_suffix   100.00% 9 0 0   100.00% 2 0   100.00%
fpdf2_textindex / parser.py TextIndexParser._parse_toggling_directive   100.00% 14 0 0   83.33% 6 1   95.00%
fpdf2_textindex / parser.py TextIndexParser._parse_wildcards   94.44% 18 1 0   87.50% 8 1   92.31%
fpdf2_textindex / parser.py TextIndexParser._prefix_search   75.00% 4 1 0   75.00% 4 1   75.00%
fpdf2_textindex / parser.py TextIndexParser._update_index   80.77% 26 5 2   80.00% 20 4   80.43%
fpdf2_textindex / parser.py (no function)   100.00% 52 0 1   100.00% 0 0   100.00%
fpdf2_textindex / pdf.py FPDF.__init__   88.89% 9 1 0   50.00% 2 1   81.82%
fpdf2_textindex / pdf.py FPDF._set_index_link_locations   90.91% 22 2 0   87.50% 16 2   89.47%
fpdf2_textindex / pdf.py FPDF._insert_index   81.82% 55 10 0   68.18% 22 3   77.92%
fpdf2_textindex / pdf.py FPDF._preload_font_styles   84.62% 13 2 0   75.00% 8 2   80.95%
fpdf2_textindex / pdf.py FPDF.index_entries   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / pdf.py FPDF.add_index_entry   0.00% 4 4 0   100.00% 0 0   0.00%
fpdf2_textindex / pdf.py FPDF.insert_index_placeholder   53.85% 13 6 0   62.50% 8 3   57.14%
fpdf2_textindex / pdf.py FPDF.multi_cell   73.23% 127 34 0   65.38% 78 17   70.24%
fpdf2_textindex / pdf.py FPDF.output   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / pdf.py FPDF.output   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / pdf.py FPDF.output   62.50% 32 12 0   50.00% 30 11   56.45%
fpdf2_textindex / pdf.py (no function)   100.00% 58 0 21   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py TextIndexEntryP.depth   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py TextIndexEntryP.label   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py TextIndexEntryP.sort_label   100.00% 0 0 1   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py _AlsoPseudoEntry.label   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py _AlsoPseudoEntry.sort_label   0.00% 1 1 0   100.00% 0 0   0.00%
fpdf2_textindex / renderer.py TextIndexRenderer.__init__   80.00% 20 4 0   50.00% 6 1   73.08%
fpdf2_textindex / renderer.py TextIndexRenderer.render_text_index   92.31% 26 2 0   88.89% 18 2   90.91%
fpdf2_textindex / renderer.py TextIndexRenderer._render_entry   100.00% 11 0 2   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py TextIndexRenderer._render_header   92.31% 13 1 0   83.33% 6 1   89.47%
fpdf2_textindex / renderer.py TextIndexRenderer._add_to_outline   100.00% 13 0 0   100.00% 4 0   100.00%
fpdf2_textindex / renderer.py TextIndexRenderer._calc_entry_size   76.92% 13 3 3   50.00% 2 1   73.33%
fpdf2_textindex / renderer.py TextIndexRenderer._calc_min_header_height   100.00% 7 0 0   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py TextIndexRenderer._entry_at_label_path   77.78% 9 2 0   66.67% 6 2   73.33%
fpdf2_textindex / renderer.py TextIndexRenderer._get_text_style   100.00% 2 0 0   100.00% 0 0   100.00%
fpdf2_textindex / renderer.py TextIndexRenderer._prepare_entry   94.44% 36 2 0   91.67% 24 2   93.33%
fpdf2_textindex / renderer.py TextIndexRenderer._prepare_cross_references   84.62% 52 8 0   81.25% 32 4   83.33%
fpdf2_textindex / renderer.py TextIndexRenderer._prepare_references   80.95% 21 4 4   70.00% 10 3   77.42%
fpdf2_textindex / renderer.py TextIndexRenderer._prepare_referenced_page   100.00% 14 0 0   100.00% 4 0   100.00%
fpdf2_textindex / renderer.py TextIndexRenderer._run_in_children   100.00% 3 0 0   100.00% 2 0   100.00%
fpdf2_textindex / renderer.py TextIndexRenderer._set_links   100.00% 15 0 0   100.00% 6 0   100.00%
fpdf2_textindex / renderer.py (no function)   100.00% 47 0 17   100.00% 0 0   100.00%
fpdf2_textindex / utils.py escape_square_brackets   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / utils.py insert_at_match   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / utils.py join_label_path   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / utils.py md_link   100.00% 2 0 0   100.00% 0 0   100.00%
fpdf2_textindex / utils.py remove_match_from_str   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / utils.py remove_quotes   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / utils.py split_label_path   100.00% 1 0 0   100.00% 0 0   100.00%
fpdf2_textindex / utils.py (no function)   100.00% 10 0 0   100.00% 0 0   100.00%
fpdf2_textindex / version.py (no function)   100.00% 4 0 0   100.00% 0 0   100.00%
Total     83.89% 1906 307 98   70.55% 764 143   80.07%

No items found using the specified filter.