Coverage report:
100%
hide covered
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.