Branch Coverage

blib/lib/Game/TextMapper/Schroeder/Alpine.pm
Criterion Covered Total %
branch 198 250 79.2


line true false branch
79 0 14 if $altitude->{$coordinates}
98 0 600 unless $current_altitude > 0
102 0 600 if rand() < $n - int($n)
104 0 600 if $n < 1
109 790 7861 unless $self->legal($x, $y)
112 7675 186 if ($altitude->{$other})
114 1019 6656 unless $self->legal($x, $y)
117 6256 400 if $altitude->{$other}
120 586 0 $current_altitude > 0 ? :
134 0 600 unless (defined $altitude->{$coordinates})
139 0 0 unless $self->legal($x, $y)
141 0 0 unless defined $altitude->{$other}
146 0 0 unless (defined $altitude->{$coordinates})
175 2 28 if $current_altitude > 10 or $current_altitude < 0
181 28 0 if ($delta < -1 or $delta > 1)
185 6 134 unless $self->legal($x, $y)
188 1 133 if $current_altitude > 10 or $current_altitude < 0
207 0 600 if $altitude->{$coordinates} <= $self->bottom
216 820 2180 if $legal and $altitude->{$other} > $altitude->{$coordinates}
218 103 1839 if $legal and $water->{$other} and $water->{$other} == ($i - 3) % 6
226 1764 1923 unless defined $water->{$next}
230 246 1677 unless $self->legal($x, $y)
234 67 1610 if $loop{$next}
237 210 1212 if (not defined $direction or not $legal and $altitude->{$coordinates} < $lowest or $legal and $altitude->{$other} < $lowest)
240 721 77 $legal ? :
245 588 12 if (defined $direction)
248 588 0 unless $world->{$coordinates} =~ s/arrow\d/arrow$water->{$coordinates}/u
258 18 582 if ($altitude->{$coordinates} >= 10) { }
51 531 elsif ($altitude->{$coordinates} >= 9) { }
116 415 elsif ($altitude->{$coordinates} >= 8) { }
272 0 600 if ($altitude->{$coordinates} <= $self->bottom)
276 0 0 unless $self->legal($x, $y)
278 0 0 if $altitude->{$other} <= $self->bottom
281 0 0 $ocean ? :
291 12 588 if (not defined $water->{$coordinates} and $world->{$coordinates} ne "ocean")
303 57 543 if $world->{$coordinates} =~ /ocean|water|swamp|grass/u
305 279 264 unless $flow->{$coordinates}
307 15 249 if $dry->{$coordinates}
311 27 222 unless $self->legal($x, $y)
314 157 65 if $altitude->{$coordinates} > $altitude->{$other}
316 28 37 if ($altitude->{$coordinates} >= 6) { }
334 0 2 unless @lakes
350 0 130 unless $coordinates
353 118 12 if ($self->legal($coordinates) and $world->{$coordinates} ne "ocean")
358 126 388 if $seen{$to}
371 47 28 if (not defined $water->{$from} or $water->{$from} != $i) { }
376 12 35 unless $world->{$from} =~ s/arrow\d/arrow$i/u
386 10 2 if $start
388 2 10 unless $start
398 52 65 unless $world->{$_} =~ /mountain|swamp|grass|water|ocean/u
406 277 0 if $altitude->{$_} == 7 || $altitude->{$_} == 8 || $world->{$_} =~ /water/u && $altitude->{$_} > $self->bottom and not $flow->{$_}
421 776 112 if (defined $water->{$coordinates}) { }
423 0 776 if grep /$other/u, @$river
425 5 771 if (ref $flow->{$other}) { }
461 30 704 if ($seen{$coordinates})
465 0 30 if (@$canyon)
467 0 0 if ($other[0] eq $canyon->[-1]) { }
474 0 0 if $other ne $coordinates
487 15 689 if ($altitude->{$coordinates} and $current_altitude < $altitude->{$coordinates} and not $world->{$coordinates} =~ /water|ocean/u) { }
491 7 8 unless @$canyon
493 15 0 unless $dry->{$coordinates}
499 7 682 if (@$canyon)
522 0 0 if $flow->{$other}
527 0 0 if $flow->{$other}
535 79 200 unless $world->{$coordinates} =~ /mountain|hill|water|ocean|swamp|grass/u
538 0 279 if rand() < $self->arid - int($self->arid)
541 279 0 if ($n >= 1)
544 89 1307 unless $self->legal($x, $y)
546 19 1288 if $dry->{$other}
547 429 859 if $altitude->{$coordinates} < $altitude->{$other}
548 342 517 unless $world->{$other} =~ /mountain|hill|water|ocean|swamp|grass/u
551 279 0 if ($n >= 2)
554 348 2444 unless $self->legal($x, $y)
556 1748 696 if $altitude->{$coordinates} <= $altitude->{$other}
560 35 2192 unless $self->legal($mx, $my)
562 11 2181 if $dry->{$midway}
563 1463 718 if $self->distance($midway, $other) != 1
564 32 686 if $altitude->{$coordinates} < $altitude->{$midway}
565 24 662 if $altitude->{$midway} < $altitude->{$other}
569 34 662 unless $ok
570 351 311 unless $world->{$other} =~ /mountain|hill|water|ocean|swamp|grass/u
575 117 655 if ($altitude->{$coordinates} >= 7) { }
326 329 elsif ($altitude->{$coordinates} >= 6) { }
311 18 elsif ($altitude->{$coordinates} >= 4) { }
592 15 279 if $dry->{$coordinates}
604 331 269 if $altitude->{$coordinates} < 7 or $altitude->{$coordinates} > 8
608 9 260 unless $self->legal($x, $y)
611 100 160 if $altitude->{$coordinates} > $altitude->{$other}
623 447 153 if $altitude->{$coordinates} != 7
625 4 149 if $world->{$coordinates} =~ /water|ocean/u
629 10 139 unless $self->legal($x, $y)
632 94 45 if $altitude->{$coordinates} > $altitude->{$other}
642 30 570 unless ($world->{$coordinates} =~ /mountain|hill|water|ocean|swamp|grass|forest|firs|trees/u)
643 8 22 if ($altitude->{$coordinates} >= 7) { }
651 0 2 unless @dry
658 9 23 unless $self->legal($x, $y)
670 12 4 unless $world->{$coordinates} =~ s/light-green bushes/light-green grass/u or $world->{$coordinates} =~ s/light-green grass/dust grass/u or $world->{$coordinates} =~ s/dust grass/dust hill/u
681 2 2 if @candidates > $max / 10
685 29 38 unless $world->{$coordinates} =~ s/fir-forest/firs thorp/u
687 60 1740 if $world->{$_} =~ /(?
689 0 4 if @candidates > $max / 20
694 50 1750 if $world->{$_} =~ /(?
696 0 4 if @candidates > $max / 40
703 0 4 if @candidates > $max / 40
710 0 4 if @candidates > $max / 40
719 414 15 unless $world->{$other} and $world->{$other} =~ /water|ocean/u
730 2 91 if $world->{$coordinates} =~ /large-town|city/u
731 5 88 if $world->{$coordinates} =~ / town/u
746 93 3632 if $from eq $to
749 143 125 if ($distance <= 3 and !$best_distance || $distance <= $best_distance and !$best || $altitude->{$to} < $best_altitude)
757 7 86 unless $best
759 11 75 if $trails{"$best-$from"}
772 0 600 if $altitude->{$coordinates} <= $self->bottom
775 238 2762 unless $self->legal($x, $y)
777 155 2607 if ($altitude->{$coordinates} - $altitude->{$other} >= 2)
778 95 60 if (@neighbors == 6) { }
794 82 325 if $seen{$coordinates}
796 30 295 unless exists $altitude->{$coordinates}
797 0 295 if ($altitude->{$coordinates} <= $self->bottom)
798 0 0 if ($altitude->{$coordinates} == $self->bottom and $world->{$coordinates} =~ /water|ocean/u and $altitude->{$coordinates} == $altitude->{$last} - 1) { }
848 0 36 if $step == $i++
858 20 16 if ($step >= 10)
912 0 2 if ($step > 0)
927 0 2 if ($step > 0)
939 2 0 if $url