Branch Coverage

blib/lib/Games/Sudoku/PatternSolver/CPLogic.pm
Criterion Covered Total %
branch 60 76 78.9


line true false branch
42 4769 3493 unless $symbol =~ /[1-9]/
60 31437 42921 if $field->{'value'}
61 14791 28130 unless ($area_vector->bit_test($field->{'offset'}))
80 252 118 $last_filled ? :
88 79 39 unless $last_dropped
101 99 3 if ($filled_total)
102 1506 6513 unless $Fields->[$_]{'value'}
105 0 99 if ($missing_count == 9 and $puzzle->{'uniqueGivens'} == 8)
107 0 0 if $puzzle_string_2 =~ /$_/
128 79 23 if ($missing_count) { }
22 1 elsif ($filled_total) { }
138 0 1 if $Games::Sudoku::PatternSolver::VERBOSE
147 0 370 if $Games::Sudoku::PatternSolver::VERBOSE
153 716 2614 if exists $symbol_counts->{$symbol} and $symbol_counts->{$symbol} == 9
159 459078 61332 unless exists $Fields->[$field_index]{'candidates'}{$symbol}
160 29386 31946 if defined $only_position
164 2560 38632 if (defined $only_position)
167 0 2560 if $RECORD_STEPS
179 0 370 if $Games::Sudoku::PatternSolver::VERBOSE
183 20551 9419 if $field->{'value'}
185 649 8770 if (@candidates == 1)
190 0 649 if $RECORD_STEPS
205 0 118 if $Games::Sudoku::PatternSolver::VERBOSE
218 19284 9390 if $Fields->[$field_index]{'value'}
227 905 8485 if ($candidate_count > 4 or $candidate_count == 1) { }
237 1964 1222 if @candidates_in_group < 4
241 515 3151 if @candidates_in_group <= $k_size
251 558 40988 if (@combined_fields == $k_size)
252 0 558 if $Games::Sudoku::PatternSolver::VERBOSE
260 356 3209 unless (exists $hidden_candidates{$candidate_symbol})
263 0 356 if $RECORD_STEPS
279 0 118 if $Games::Sudoku::PatternSolver::VERBOSE
304 49 11784 if (@further_box_matches and not @further_line_matches) { }
64 13522 elsif (@further_line_matches and not @further_box_matches) { }
309 0 84 if $RECORD_STEPS
318 0 109 if $RECORD_STEPS
331 0 549 if $Games::Sudoku::PatternSolver::VERBOSE
341 0 3209 if $Games::Sudoku::PatternSolver::VERBOSE