Branch Coverage

blib/lib/Games/Mines/Play.pm
Criterion Covered Total %
branch 75 104 72.1


line true false branch
66 2 62 if (@_)
71 1 63 unless defined $new_game
107 2 4 if (exists $opt{'small'} and $opt{'small'}) { }
2 2 elsif (exists $opt{'medium'} and $opt{'medium'}) { }
2 0 elsif (exists $opt{'large'} and $opt{'large'}) { }
117 1 5 if (defined $opt{'height'} and $opt{'height'} > 1)
120 1 5 if (defined $opt{'width'} and $opt{'width'} > 1)
123 1 5 if (defined $opt{'mines'} and $opt{'mines'} > 0)
158 9 18 if ($type eq 'field') { }
9 9 elsif ($type eq 'check') { }
9 0 elsif ($type eq 'solution') { }
185 0 1 unless ($mine_field->running)
235 1 16 unless $Games::Mines::Play::loaded_ansi_color
274 0 1 unless (open FILE, "$file")
277 0 1 unless (open FILE_TO, "> $file.working")
284 1 0 if ($reading)
286 1 44 if $line =~ /Game\s+$game\s*$/
297 1 8 if ($mine_field->at($w, $h) eq ' ') { }
3 5 elsif ($mine_field->at($w, $h) =~ /\d/) { }
0 5 elsif ($mine_field->at($w, $h) eq '*') { }
3 2 elsif ($mine_field->at($w, $h) eq '.') { }
2 0 elsif ($mine_field->at($w, $h) eq 'F') { }
307 0 3 if ($mine_field->_at($w, $h) eq ' ') { }
2 1 elsif ($mine_field->_at($w, $h) =~ /\d/) { }
1 0 elsif ($mine_field->_at($w, $h) eq '*') { }
318 0 2 if ($mine_field->_at($w, $h) eq ' ') { }
1 1 elsif ($mine_field->_at($w, $h) =~ /\d/) { }
1 0 elsif ($mine_field->_at($w, $h) eq '*') { }
333 1 0 if ($reading)
337 1 18 if $line =~ /Game/
339 0 1 if eof FILE
349 1 0 if ($reading)
352 1 0 if ($reading)
353 0 1 unless rename $file, "$file.bak"
356 0 1 unless rename "$file.working", $file
376 0 2 unless (open FILE, $file)
384 2 63 if $line =~ /Game $game\s*$/
387 0 2 if eof FILE
407 4 14 if ($sq[$h] eq '.') { }
2 12 elsif ($sq[$h] eq 'f') { }
8 4 elsif ($sq[$h] eq ' ') { }
0 4 elsif ($sq[$h] =~ /\d/) { }
2 2 elsif ($sq[$h] eq ':') { }
2 0 elsif ($sq[$h] eq 'F') { }
0 0 elsif ($sq[$h] eq 'X') { }
459 0 2 if ($error)
540 4 5 if ($mine_field->shown($w, $h)) { }
0 5 elsif ($mine_field->at($w, $h) eq 'X') { }
1 4 elsif ($mine_field->at($w, $h) eq 'F') { }
547 0 1 if ($mine_field->_at($w, $h) eq '*') { }
567 0 263 if $Games::Mines::Play::AUTOLOAD =~ /::DESTROY$/
572 0 263 unless ($$game{'GAME'}->can($attr))