Condition Coverage

blib/lib/IO/Socket/IP.pm
Criterion Covered Total %
condition 63 114 55.2


and 3 conditions

line !l l&&!r l&&r condition
385 51 0 0 exists $arg->{'PeerAddr'} and not exists $arg->{'PeerHost'}
388 46 0 5 exists $arg->{'PeerPort'} and not exists $arg->{'PeerService'}
391 51 0 0 exists $arg->{'LocalAddr'} and not exists $arg->{'LocalHost'}
394 40 0 11 exists $arg->{'LocalPort'} and not exists $arg->{'LocalService'}
421 25 10 0 defined $listenqueue and defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
462 35 0 0 not defined $hints{'socktype'} and defined $hints{'protocol'}
483 10 10 1 defined $service and $service =~ s/\((\d+)\)$//u
490 15 5 1 $err and defined $fallback_port
512 0 10 0 defined $service and $service =~ s/\((\d+)\)$//u
517 10 0 0 $err and defined $fallback_port
539 0 0 1 @$_ >= 2 and @$_ <= 3
558 30 0 0 defined $arg->{'MultiHomed'} and not $arg->{'MultiHomed'}
566 13 17 0 defined $local->{'family'} and defined $peer->{'family'}
30 0 0 defined $local->{'family'} and defined $peer->{'family'} and $local->{'family'} != $peer->{'family'}
568 13 17 0 defined $local->{'socktype'} and defined $peer->{'socktype'}
30 0 0 defined $local->{'socktype'} and defined $peer->{'socktype'} and $local->{'socktype'} != $peer->{'socktype'}
570 13 17 0 defined $local->{'protocol'} and defined $peer->{'protocol'}
30 0 0 defined $local->{'protocol'} and defined $peer->{'protocol'} and $local->{'protocol'} != $peer->{'protocol'}
653 30 0 0 defined do { *$self }->{'io_socket_ip_v6only'} and defined $AF_INET6
30 0 0 defined do { *$self }->{'io_socket_ip_v6only'} and defined $AF_INET6 and $info->{'family'} == $AF_INET6
786 4 0 3 defined $self->fileno && !do { *$self }->{'io_socket_ip_connect_in_progress'} && defined getpeername $self
817 0 0 0 defined $AF_INET6 and $family == $AF_INET6
1157 2 2 13 defined $2 and length $2

or 2 conditions

line l !l condition
467 21 13 defined $arg->{'LocalHost'} or defined $arg->{'LocalService'} or ""
574 11 0 $local->{'protocol'} || $peer->{'protocol'} || 0
806 43 0 $xflags || 0

or 3 conditions

line l !l&&r !l&&!r condition
149 0 0 0 $! == 22 or $! == 95
421 0 0 10 defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
455 19 0 16 defined $hints{'socktype'} or defined $hints{'protocol'}
467 18 3 13 defined $arg->{'LocalHost'} or defined $arg->{'LocalService'}
478 18 3 0 defined $host or defined $service
501 10 0 19 defined $arg->{'PeerHost'} or defined $arg->{'PeerService'}
572 17 11 2 $local->{'family'} || $peer->{'family'}
573 17 11 0 $local->{'socktype'} || $peer->{'socktype'}
627 27 3 0 $self->setup or not $blocking
675 3 0 0 $! == 115 or $! == 11
723 1 0 0 $err == 115 || $err == 11
770 2 0 2 CORE::connect $self, $addr or $! == 106
1155 8 9 30 $addr =~ /\A\[($IPv6_re)\](?::([^\s:]*))?\z/u or $addr =~ /\A([^\s:]*):([^\s:]*)\z/u