Branch Coverage

blib/lib/Math/PlanePath/OneOfEight.pm
Criterion Covered Total %
branch 136 394 34.5


line true false branch
226 0 11 unless (exists $dir_maximum_dxdy{$parts})
262 0 92 if ($n < 0)
263 0 92 if (is_infinite($n))
269 0 92 if ($n != $int)
284 22 70 if ($n <= $#$initial)
339 0 70 if ($parts eq 'octant') { }
0 70 elsif ($parts eq 'octant_up') { }
0 70 elsif ($parts eq 'wedge') { }
70 0 elsif ($parts eq '1' or $parts eq '2' or $parts eq '4') { }
0 0 elsif ($parts eq '3mid') { }
0 0 elsif ($parts eq '3side') { }
0 0 elsif ($parts eq 'side') { }
353 0 0 if ($n < $add) { }
371 42 28 if ($parts eq '4')
374 18 24 if ($n >= $hadd)
381 42 28 if ($parts eq '2' or $parts eq '4')
384 19 23 if ($n >= $qadd)
391 24 46 if ($n >= $add)
401 0 0 _is_pow2($depth + 2) ? :
404 0 0 if ($n < $add) { }
415 0 0 if ($n < $add) { }
422 0 0 if ($n < $add) { }
428 0 0 if ($n < $add) { }
438 0 0 if ($n < $add) { }
461 0 0 _is_pow2($depth + 2) ? :
464 0 0 if ($n < $add) { }
478 0 0 if ($n < $add) { }
486 0 0 if ($n < $add) { }
495 0 0 if ($n < $add) { }
505 0 0 if ($n < $add) { }
529 0 0 if ($n < $add) { }
554 36 86 if ($depth < $pow)
560 46 40 if ($depth <= 3)
561 17 29 if ($mirror) { }
563 0 17 if ($depth == $top_no_extra_pow - 1)
571 1 28 if (not $log2_extras and $depth == 3)
589 24 16 if ($depth <= 1)
591 7 17 if ($mirror)
602 9 7 if ($mirror == 0) { }
607 3 6 if ($depth + 1 < $pow) { }
609 3 0 if (_is_pow2($depth + 2))
615 1 2 if ($n < $add)
635 0 8 if (not $log2_extras and $depth + 1 == $pow)
640 4 4 if ($n < $add)
645 4 0 $log2_extras ? :
665 0 7 if ($depth == $top_no_extra_pow - 1)
670 2 5 if ($n < $eadd)
680 4 1 if ($n < $add)
682 4 0 $log2_extras ? :
748 0 70 if (is_infinite($exp))
767 141 125 if ($try_n_depth <= $n)
834 0 60 if (is_infinite($x))
837 0 60 if (is_infinite($y))
847 0 60 if (is_infinite($exp))
864 0 60 if ($parts eq 'octant') { }
0 60 elsif ($parts eq 'octant_up') { }
0 60 elsif ($parts eq 'wedge') { }
60 0 elsif ($parts eq '1' or $parts eq '4') { }
0 0 elsif ($parts eq '3mid') { }
0 0 elsif ($parts eq '3side') { }
0 0 elsif ($parts eq 'side') { }
0 0 elsif ($parts eq '2') { }
866 0 0 if ($y < 0 or $y > $x)
869 0 0 if ($x <= 1 and $y <= 1)
875 0 0 if ($x < 0 or $x > $y)
879 0 0 if ($x <= 1 and $y <= 1)
889 0 0 if ($x > $y or $x < -$y)
892 0 0 if (abs $x <= 1 and $y <= 1)
895 0 0 if ($x >= 0) { }
908 0 60 if ($parts eq '1') { }
910 0 0 if ($x < 0 or $y < 0)
913 0 0 if ($x <= 1 and $y <= 1)
918 18 42 if (abs $x <= 1 and abs $y <= 1)
921 18 24 if ($y < 0)
928 19 23 if ($x < 0)
937 13 29 if ($y > $x)
944 34 8 if ($mult)
953 0 0 if (abs $x <= 1 and abs $y <= 1)
957 0 0 if ($y < 0) { }
958 0 0 if ($x < 0)
963 0 0 if ($y >= $x) { }
980 0 0 if ($x >= 0) { }
981 0 0 if ($y <= $x) { }
1019 0 0 if ($y >= $x) { }
1062 0 0 if (abs $x <= 1 and abs $y <= 2)
1066 0 0 if ($y < 0) { }
1067 0 0 if ($x < 0)
1072 0 0 if ($y >= $x) { }
1089 0 0 if ($x > 0) { }
1090 0 0 if ($y <= $x) { }
1131 0 0 if ($y >= $x) { }
1188 0 0 if ($x < 0 or $y < 0)
1191 0 0 if ($x <= 1 and $y <= 1)
1195 0 0 if ($y > $x)
1229 0 42 if ($x == 0 or $y == 0)
1241 24 18 if ($x <= 3)
1245 20 4 if ($x == 3)
1246 0 20 unless ($log2_extras)
1247 0 0 if ($y == 1)
1251 0 0 unless ($mirror)
1256 0 20 if ($top_no_extra_pow == 4)
1257 0 0 if ($y == 3)
1268 0 24 unless (defined $nyx)
1277 4 14 if ($x == $pow) { }
14 0 elsif ($x == $pow + 1) { }
1278 4 0 if ($y == $pow)
1286 5 9 if ($y == $pow - 1)
1289 2 3 $mirror ? :
1292 6 3 if ($y == $pow)
1298 3 0 if ($y == $pow + 1)
1301 0 3 $mirror ? :
1306 0 0 if ($x < $pow) { }
1313 0 0 if ($y < $pow) { }
1317 0 0 if ($y > $x) { }
1322 0 0 unless ($y and $x < $pow)
1329 0 0 if ($mirror)
1340 0 0 if ($mirror) { }
1347 0 0 if ($x < $pow - 1)
1356 0 0 $log2_extras ? :
1362 0 0 unless ($x)
1366 0 0 if ($mirror) { }
1369 0 0 if ($x < $pow - 1)
1380 0 0 $log2_extras ? :
1394 0 0 if (--$exp < 0)
1396 0 0 if ($x == 1 and $y == 1) { }
0 0 elsif ($x == 1 and $y == 2) { }
1420 34 8 if (@add_offset)
1424 0 34 if ($d + 1 == $add_top_no_extra_pow[$i])
1428 0 0 if (not $add_log2_extras[$i] and $d >= 3 and _is_pow2($d + 1))
1457 0 0 if $x1 > $x2
1458 0 0 if $y1 > $y2
1461 0 0 $parts eq '3side' ? :
1469 0 0 if ($parts eq '1')
1498 0 0 if ($n < 0)
1513 0 0 unless my($x, $y) = $self->n_to_xy($n)
1529 0 0 if ($n < 0)
1532 0 0 unless my($x, $y) = $self->n_to_xy($n)
1539 0 0 if (defined $pn and $self->tree_n_to_depth($pn) == $parent_depth)
1856 0 413 if ($depth < 0)
1863 21 392 if ($depth <= $#$initial)
1872 0 392 if (is_infinite($exp))
1891 209 183 if ($parts eq '4') { }
123 60 elsif ($parts eq '1') { }
27 33 elsif ($parts eq 'octant' or $parts eq 'octant_up') { }
9 24 elsif ($parts eq 'wedge') { }
12 12 elsif ($parts eq '3mid') { }
12 0 elsif ($parts eq '3side') { }
0 0 elsif ($parts eq 'side') { }
1923 3 9 $depth == $pow - 1 ? :
1945 3 563 if ($depth <= 1)
1951 24 539 if ($rem < 0)
1963 474 65 if ($rem <= 1) { }
1964 297 177 if ($rem == 0) { }
1984 16 49 if ($rem1 == $pow) { }
0 49 elsif (@new_pending and $new_pending[-1] == $rem1) { }
2048 0 122 if (is_infinite($exp))
2069 17 115 if ($depth <= $#_depth_to_octant_added)
2074 0 115 if ($depth < $pow)
2087 99 16 if ($rem <= 1) { }
2088 8 91 if ($rem == 0) { }
2097 11 5 if ($rem1 == $pow) { }
2106 5 0 _is_pow2($rem + 2) ? :
2108 0 5 if (@new_depth and $new_depth[-1] == $rem1) { }
2162 0 0 if ($n < 0)
2163 0 0 if (is_infinite($n))
2171 0 0 if (my $initial = $tree_n_to_subheight{$parts}[$depth])
2176 0 0 if ($parts eq 'octant') { }
0 0 elsif ($parts eq 'octant_up') { }
0 0 elsif ($parts eq 'wedge') { }
0 0 elsif ($parts eq '3mid') { }
0 0 elsif ($parts eq '3side') { }
2186 0 0 if ($n >= $add)
2193 0 0 if (_is_pow2($depth + 2))
2198 0 0 if ($n < 0)
2208 0 0 if ($n >= $end) { }
2214 0 0 if ($n >= $add)
2222 0 0 if (_is_pow2($depth + 2))
2227 0 0 if ($n < 0)
2234 0 0 if ($n < 2 * $add) { }
2235 0 0 if ($n >= $add)
2242 0 0 if ($n < 2 * $add) { }
2244 0 0 if ($n >= $add)
2254 0 0 if ($depth == 1)
2255 0 0 $n % 2 ? :
2263 0 0 if ($n < 0) { }
2279 0 0 if ($n == 0)
2283 0 0 if $depth < $pow
2285 0 0 if (defined $dbase)
2289 0 0 if ($depth == 1)
2291 0 0 if ($n == 1)
2301 0 0 if ($n < $add) { }
2308 0 0 if ($n < 0) { }
2323 0 0 defined $dbase ? :
2333 60 10 unless ($self->{'parts'} eq '3side')
2339 0 0 unless (defined $depth)
2340 0 0 unless ($self->{'parts'} eq '3side')
2355 0 0 if ($n < 2)