Branch Coverage

lib/Net/BART.pm
Criterion Covered Total %
branch 92 146 63.0


line true false branch
20 284 0 if ($slash >= 0) { }
28 3 281 $is_ipv6 ? :
30 0 284 unless (defined $prefix_len)
31 0 0 $is_ipv6 ? :
40 0 0 if (index($str, ":") != -1)
63 7 0 if (index($str, '::') != -1) { }
65 7 0 $left ? :
66 4 3 $right ? :
68 0 7 if $fill < 0
73 0 7 unless @halves == 8
87 2 282 if ($remaining and $full_bytes < $total)
98 0 2 if ($is_ipv6)
122 3 275 $is_ipv6 ? :
124 277 1 if ($is_new)
125 3 274 if ($is_ipv6) { }
137 1 803 if ($prefix_len == 0)
141 2 801 if ($lastbits and $depth == $strides)
145 271 530 if (not $lastbits and $depth == $strides - 1)
153 10 520 unless ($exists)
162 6 514 if ($ref eq "Net::BART::Node::Leaf")
163 0 6 if ($child->matches_prefix($addr, $prefix_len))
173 5 509 if ($ref eq "Net::BART::Node::Fringe")
174 0 5 if (not $lastbits and $depth == $strides - 1)
192 270 1 unless ($exists)
199 1 0 if ($ref eq "Net::BART::Node::Fringe")
204 0 0 if ($ref eq "Net::BART::Node::Bart")
208 0 0 if ($ref eq "Net::BART::Node::Leaf")
222 0 2 $is_ipv6 ? :
224 1 1 if ($ok)
225 0 1 if ($is_ipv6) { }
236 0 4 if ($prefix_len == 0)
240 0 4 if ($lastbits and $depth == $strides)
244 2 2 if (not $lastbits and $depth == $strides - 1)
247 1 1 unless $exists
250 1 0 if ($ref eq "Net::BART::Node::Fringe")
254 0 0 if ($ref eq "Net::BART::Node::Bart")
256 0 0 if ($ok and $child->is_empty)
266 0 2 unless $exists
269 0 2 if ($ref eq "Net::BART::Node::Leaf")
270 0 0 if ($child->matches_prefix($addr, $prefix_len))
277 0 2 if ($ref eq "Net::BART::Node::Fringe")
282 0 2 if ($ok and $child->is_empty)
295 4 18 if (index($ip_str, ':') != -1) { }
311 4 18 $is_ipv6 ? :
312 4 18 $is_ipv6 ? :
329 10 38 unless ($$chd_bs[$octet >> 6] & 1 << ($octet & 63))
335 7 31 if ($ref eq "Net::BART::Node::Fringe")
338 5 26 if ($ref eq "Net::BART::Node::Leaf")
339 3 2 if ($child->contains_ip($bytes))
350 8 8 if $ok
361 0 3 if (index($ip_str, ':') != -1) { }
377 0 3 $is_ipv6 ? :
378 0 3 $is_ipv6 ? :
386 0 3 if ($pfx_bs->[0] & $lut->[0] | $pfx_bs->[1] & $lut->[1] | $pfx_bs->[2] & $lut->[2] | $pfx_bs->[3] & $lut->[3])
394 1 2 unless ($$chd_bs[$octet >> 6] & 1 << ($octet & 63))
400 2 0 if ($ref eq "Net::BART::Node::Fringe")
401 0 0 if ($ref eq "Net::BART::Node::Leaf")
402 0 0 $child->contains_ip($bytes) ? :
413 0 4 $is_ipv6 ? :
423 0 6 if ($prefix_len == 0)
427 0 6 if ($lastbits and $depth == $strides)
431 4 2 if (not $lastbits and $depth == $strides - 1)
433 1 3 unless $exists
435 2 1 if ($ref eq "Net::BART::Node::Fringe")
436 1 0 if ($ref eq "Net::BART::Node::Bart")
441 0 2 unless $exists
443 0 2 if ($ref eq "Net::BART::Node::Leaf")
444 0 0 $child->matches_prefix($addr, $prefix_len) ? :
446 0 2 if $ref eq "Net::BART::Node::Fringe"
463 1 1 $is_ipv6 ? :
471 0 0 if $pfx_len_in_stride > 0
483 1 1 if ($ref eq 'Net::BART::Node::Leaf') { }
1 0 elsif ($ref eq 'Net::BART::Node::Fringe') { }