Branch Coverage

blib/lib/Games/Solitaire/Verify/Golf.pm
Criterion Covered Total %
branch 47 64 73.4


line true false branch
63 5 0 if (my($card_s) = $foundation_str =~ /\AFoundations:((?: $CARD_RE){$num_foundations})\z/u) { }
66 0 5 unless $card_s =~ s/\A //msu
69 0 5 if (@c != $num_foundations)
94 0 6 unless (exists $_VARIANTS{$variant})
101 1 5 $IS_BINARY_STAR ? :
112 3 3 if ($self->_variant eq 'golf') { }
114 0 3 unless ($foundation_str =~ s/\ATalon: ((?:$CARD_RE ){15}$CARD_RE)/$1/u)
132 1 2 if ($self->_variant eq 'all_in_a_row') { }
134 0 1 if ($foundation_str ne "Foundations: -")
156 1 5 if ($self->_wrap_ranks)
206 39 301 if ($IS_GOLF and $move_line =~ /\ADeal talon\z/u) { }
209 0 39 unless (@{$self->_talon;})
217 102 199 $IS_DETAILED_MOVE ? :
0 301 unless ($IS_DETAILED_MOVE ? ($moved_card_str, $col_idx, $foundation_idx) = $move_line =~ /\AMove ($CARD_RE) from stack ([0-9]+) to foundations ([0-9]+)\z/u : (($col_idx) = $move_line =~ /\AMove a card from stack ([0-9]+) to the foundations\z/u))
237 301 39 unless (defined $card)
239 0 301 if ($col_idx < 0 or $col_idx >= $NUM_COLUMNS)
249 238 102 unless ($IS_DETAILED_MOVE)
252 0 238 unless ($info_line =~ /\AInfo: Card moved is ($CARD_RE)\z/u)
266 0 238 unless ($sep_line =~ /\A=+\z/u)
276 39 301 if (defined $card) { }
279 0 39 if ($top_card_moved_str ne $moved_card_str)
292 0 301 if ($top_card_moved_str ne $moved_card_str)
300 300 1 if (defined $found_card)
306 1 60 if (not $delta == 1 || $delta == $MAX_RANK - 1 or $IS_GOLF and not $self->_wrap_ranks and ($self->_place_queens_on_kings ? $found_rank == $MAX_RANK : 0) || $delta != 1)
326 102 197 if ($IS_DISPLAYED_BOARD)
329 0 102 unless $wanted_line =~ s/\AFreecells:/Foundations:/u
334 0 102 unless $wanted_line =~ s/\AFoundations:(?: $CARD_RE){$foundation_idx} \K(\Q$fstr\E)/my $c = $1; "[ $c -> $tstr ]";/eu
344 102 1632 if ($i == $col_idx)
346 0 102 unless $wanted_line =~ s/ \K(\Q$tstr\E)\z/my $c = $1; "[ $c -> ]";/eu
360 0 339 unless (defined $foundation_idx)
365 185 154 if ($CHECK_EMPTY)
367 3 182 if ($remaining_cards == 0)