Branch Coverage

blib/lib/IO/Socket/INET6.pm
Criterion Covered Total %
branch 96 170 56.4


line true false branch
61 7 50 if @_ == 1
73 24 35 if (defined $addr)
74 15 9 unless (Socket6::inet_pton(10, $addr))
75 4 11 if ($addr =~ s<^\[([\da-fA-F:]+)\]:([\w\(\)/]+)$>[$1]) { }
0 11 elsif ($addr =~ s<^\[(::[\da-fA-F.:]+)\]:([\w\(\)/]+)$>[$1]) { }
0 11 elsif ($addr =~ s/^\[([\da-fA-F:]+)\]/$1/) { }
5 6 elsif ($addr =~ s[:([\w\(\)/]+)$][]) { }
88 19 40 if (defined $proto and $proto =~ /\D/)
89 19 0 if (@proto = getprotobyname $proto) { }
98 18 41 if (defined $port)
99 0 18 $port =~ s/\((\d+)\)$// ? :
102 0 18 if $port =~ /\D/
106 0 18 unless (defined $port)
111 0 18 if @serv and not $proto
129 0 2 $_[0] =~ /^$title/ ? :
130 2 0 if defined fileno $sock
140 0 40 if exists $$arg{'LocalHost'} and not exists $$arg{'LocalAddr'}
142 0 40 if exists $$arg{'PeerHost'} and not exists $$arg{'PeerAddr'}
152 0 40 unless my($laddr, $lport, $proto) = _sock_info($$arg{'LocalAddr'}, $$arg{'LocalPort'}, $$arg{'Proto'})
164 0 40 if ($^O eq 'MSWin32')
165 0 0 if (not $laddr || $lport) { }
0 0 elsif (not $lport) { }
166 0 0 $family == 2 ? :
177 19 21 unless (exists $$arg{'Listen'})
178 0 19 unless ($raddr, $rport) = _sock_info($$arg{'PeerAddr'}, $$arg{'PeerPort'}, $proto)
188 0 40 if @lres < 5
190 14 26 if (defined $raddr)
192 0 14 if @rres < 5
196 14 26 if (@rres) { }
203 22 23 if $rres[$r] != $fam_listen
221 38 3 if ($family == 10)
222 1 37 if ($$arg{'LocalFlow'} or $$arg{'LocalScope'})
230 0 41 unless $sock->socket($family, $type, $proto)
233 3 38 if (defined $$arg{'Blocking'})
234 0 3 unless defined $sock->blocking($$arg{'Blocking'})
238 1 40 if ($$arg{'Reuse'} or $$arg{'ReuseAddr'})
239 0 1 unless $sock->sockopt(2, 1)
243 0 41 if ($$arg{'ReusePort'})
244 0 0 unless $sock->sockopt(15, 1)
248 0 41 if ($$arg{'Broadcast'})
249 0 0 unless $sock->sockopt(6, 1)
253 3 38 if ($family == 2) { }
255 2 1 if $a ne "\000\000\000\000" or $p != 0
259 9 29 if $a ne in6addr_any() or $p != 0
263 20 20 if (exists $$arg{'Listen'})
264 0 20 unless $sock->listen($$arg{'Listen'} || 5)
269 25 15 unless $rres
271 14 1 if ($family == 10)
272 0 14 if ($$arg{'PeerFlow'} or $$arg{'PeerScope'})
281 13 2 if $sock->connect($rres)
283 1 1 unless $$arg{'MultiHomed'}
297 0 2 if ('Socket6'->VERSION <= 0.17 and 1) { }
308 0 32 unless $sock->SUPER::sockdomain(@_)
317 1 20 unless defined $new
323 0 20 wantarray ? :
327 0 11 unless @_ == 2
334 0 15 unless @_ == 2
341 0 3 unless @_ == 1
343 0 3 unless my $name = $sock->sockname
344 0 3 $sock->sockdomain == 2 ? :
348 0 20 unless @_ == 1
350 0 20 unless my $name = $sock->sockname
351 2 18 $sock->sockdomain == 2 ? :
355 0 3 unless @_ == 1
357 0 3 unless my $addr = $sock->sockaddr
363 0 1 unless @_ == 1
365 0 1 unless my $name = $sock->sockname
366 1 0 $sock->sockdomain == 10 ? :
371 0 0 unless @_ == 1
373 0 0 unless my $name = $sock->sockname
374 0 0 $sock->sockdomain == 10 ? :
378 0 1 unless @_ == 1
380 0 1 unless my $name = $sock->peername
381 0 1 $sock->sockdomain == 2 ? :
385 0 0 unless @_ == 1
387 0 0 unless my $name = $sock->peername
388 0 0 $sock->sockdomain == 2 ? :
392 0 1 unless @_ == 1
394 0 1 unless my $addr = $sock->peeraddr
400 0 1 unless @_ == 1
402 0 1 unless my $name = $sock->peername
403 1 0 $sock->sockdomain == 10 ? :
408 0 0 unless @_ == 1
410 0 0 unless my $name = $sock->peername
411 0 0 $sock->sockdomain == 10 ? :