Coverage report: 100%

Files Functions Classes

coverage.py v7.13.5, created at 2026-03-29 06:23 +0000

File function   statements missing excluded   coverage
puz.py ClueEntry.__init__   2 0 0   100%
puz.py ClueEntry.number   1 0 0   100%
puz.py ClueEntry.text   1 0 0   100%
puz.py ClueEntry.length   1 0 0   100%
puz.py ClueEntry.direction   1 0 0   100%
puz.py ClueEntry.row   1 0 0   100%
puz.py ClueEntry.col   1 0 0   100%
puz.py ClueEntry.cell   1 0 0   100%
puz.py ClueEntry.solution   2 0 0   100%
puz.py ClueEntry.fill   2 0 0   100%
puz.py read   2 0 0   100%
puz.py read_text   2 0 0   100%
puz.py load   3 0 0   100%
puz.py load_text   1 0 0   100%
puz.py PuzzleFormatError.__init__   1 0 0   100%
puz.py Puzzle.__repr__   1 0 0   100%
puz.py Puzzle.__init__   21 0 0   100%
puz.py Puzzle.load   45 0 0   100%
puz.py Puzzle.save   3 0 0   100%
puz.py Puzzle.tobytes   26 0 0   100%
puz.py Puzzle.encode   1 0 0   100%
puz.py Puzzle.encode_zstring   1 0 0   100%
puz.py Puzzle.version_tuple   1 0 0   100%
puz.py Puzzle.set_version   2 0 0   100%
puz.py Puzzle.has_rebus   3 0 0   100%
puz.py Puzzle.rebus   3 0 0   100%
puz.py Puzzle.has_timer   1 0 0   100%
puz.py Puzzle.remove_timer   2 0 0   100%
puz.py Puzzle.timer   3 0 0   100%
puz.py Puzzle.has_markup   3 0 0   100%
puz.py Puzzle.markup   3 0 0   100%
puz.py Puzzle.clue_numbering   3 0 0   100%
puz.py Puzzle.blacksquare   1 0 0   100%
puz.py Puzzle.is_solution_locked   1 0 0   100%
puz.py Puzzle.unlock_solution   8 0 0   100%
puz.py Puzzle.lock_solution   5 0 0   100%
puz.py Puzzle.check_answers   10 0 0   100%
puz.py Puzzle.check_rebus_answers   3 0 0   100%
puz.py Puzzle.header_cksum   1 0 0   100%
puz.py Puzzle.text_cksum   12 0 0   100%
puz.py Puzzle.global_cksum   5 0 0   100%
puz.py Puzzle.magic_cksum   7 0 0   100%
puz.py Puzzle.grid   1 0 0   100%
puz.py Puzzle.solution_grid   1 0 0   100%
puz.py PuzzleBuffer.__repr__   1 0 0   100%
puz.py PuzzleBuffer.__init__   3 0 0   100%
puz.py PuzzleBuffer.can_read   1 0 0   100%
puz.py PuzzleBuffer.length   1 0 0   100%
puz.py PuzzleBuffer.read   3 0 0   100%
puz.py PuzzleBuffer.read_to_end   3 0 0   100%
puz.py PuzzleBuffer.read_string   1 0 0   100%
puz.py PuzzleBuffer.read_until   3 0 0   100%
puz.py PuzzleBuffer.seek_to   6 0 0   100%
puz.py PuzzleBuffer.write   1 0 0   100%
puz.py PuzzleBuffer.write_string   2 0 0   100%
puz.py PuzzleBuffer.pack   1 0 0   100%
puz.py PuzzleBuffer.can_unpack   1 0 0   100%
puz.py PuzzleBuffer.unpack   8 0 0   100%
puz.py PuzzleBuffer.tobytes   1 0 0   100%
puz.py get_grid_numbering   22 0 0   100%
puz.py get_grid_numbering.col   1 0 0   100%
puz.py get_grid_numbering.row   1 0 0   100%
puz.py get_grid_numbering.len_across   5 0 0   100%
puz.py get_grid_numbering.len_down   5 0 0   100%
puz.py PuzzleHelper.save   0 0 1   100%
puz.py DefaultClueNumbering.__repr__   1 0 0   100%
puz.py DefaultClueNumbering.__init__   9 0 0   100%
puz.py DefaultClueNumbering.save   1 0 0   100%
puz.py DefaultClueNumbering.col   1 0 0   100%
puz.py DefaultClueNumbering.row   1 0 0   100%
puz.py DefaultClueNumbering.len_across   5 0 0   100%
puz.py DefaultClueNumbering.len_down   5 0 0   100%
puz.py ClueNumbering.__repr__   1 0 0   100%
puz.py ClueNumbering.__init__   5 0 0   100%
puz.py Grid.__repr__   1 0 0   100%
puz.py Grid.__init__   4 0 0   100%
puz.py Grid.get_cell   1 0 0   100%
puz.py Grid.get_cell_index   1 0 0   100%
puz.py Grid.get_range   5 0 0   100%
puz.py Grid.get_range_across   1 0 0   100%
puz.py Grid.get_range_down   1 0 0   100%
puz.py Grid.get_range_for_clue   1 0 0   100%
puz.py Grid.__iter__   1 0 0   100%
puz.py Grid.rows   2 0 0   100%
puz.py Grid.cols   2 0 0   100%
puz.py Grid.get_row   1 0 0   100%
puz.py Grid.get_column   1 0 0   100%
puz.py Grid.get_string   1 0 0   100%
puz.py Grid.get_string_across   1 0 0   100%
puz.py Grid.get_string_down   1 0 0   100%
puz.py Grid.get_string_for_clue   1 0 0   100%
puz.py Rebus.__repr__   1 0 0   100%
puz.py Rebus.__init__   20 0 0   100%
puz.py Rebus.has_rebus   1 0 0   100%
puz.py Rebus.is_rebus_square   1 0 0   100%
puz.py Rebus.get_rebus_squares   1 0 0   100%
puz.py Rebus.add_rebus_squares   5 0 0   100%
puz.py Rebus.add_rebus_solution   5 0 0   100%
puz.py Rebus.check_rebus_fill   12 0 0   100%
puz.py Rebus.get_rebus_solution   3 0 0   100%
puz.py Rebus.set_rebus_solution   3 0 0   100%
puz.py Rebus.get_rebus_fill   3 0 0   100%
puz.py Rebus.remove_rebus_squares   5 0 0   100%
puz.py Rebus.remove_rebus_solution   9 0 0   100%
puz.py Rebus.set_rebus_fill   2 0 0   100%
puz.py Rebus.save   15 0 0   100%
puz.py Markup.__repr__   1 0 0   100%
puz.py Markup.__init__   4 0 0   100%
puz.py Markup.clear_markup_squares   6 0 0   100%
puz.py Markup.has_markup   2 0 0   100%
puz.py Markup.get_markup_squares   2 0 0   100%
puz.py Markup.is_markup_square   2 0 0   100%
puz.py Markup.set_markup_squares   5 0 0   100%
puz.py Markup.save   4 0 0   100%
puz.py Timer.__repr__   1 0 0   100%
puz.py Timer.__init__   5 0 0   100%
puz.py Timer.is_running   1 0 0   100%
puz.py Timer.is_stopped   1 0 0   100%
puz.py Timer.save   1 0 0   100%
puz.py data_cksum   7 0 0   100%
puz.py replace_chars   3 0 0   100%
puz.py scramble_solution   3 0 0   100%
puz.py scramble_string   6 0 0   100%
puz.py unscramble_solution   3 0 0   100%
puz.py unscramble_string   7 0 0   100%
puz.py scrambled_cksum   2 0 0   100%
puz.py key_digits   1 0 0   100%
puz.py square   2 0 0   100%
puz.py shift   2 0 0   100%
puz.py unshift   1 0 0   100%
puz.py shuffle   3 0 0   100%
puz.py unshuffle   1 0 0   100%
puz.py restore   2 0 0   100%
puz.py is_blacksquare   3 0 0   100%
puz.py parse_bytes   1 0 0   100%
puz.py pack_bytes   1 0 0   100%
puz.py parse_dict   1 0 0   100%
puz.py dict_to_string   1 0 0   100%
puz.py from_text_format   79 0 0   100%
puz.py text_file_as_dict   14 0 0   100%
puz.py to_text_format   63 0 0   100%
puz.py (no function)   201 0 3   100%
Total     852 0 4   100%

No items found using the specified filter.