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
382 51 0 0 exists $arg->{'PeerAddr'} and not exists $arg->{'PeerHost'}
385 46 0 5 exists $arg->{'PeerPort'} and not exists $arg->{'PeerService'}
388 51 0 0 exists $arg->{'LocalAddr'} and not exists $arg->{'LocalHost'}
391 40 0 11 exists $arg->{'LocalPort'} and not exists $arg->{'LocalService'}
418 25 10 0 defined $listenqueue and defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
459 35 0 0 not defined $hints{'socktype'} and defined $hints{'protocol'}
480 10 10 1 defined $service and $service =~ s/\((\d+)\)$//
487 15 5 1 $err and defined $fallback_port
509 0 10 0 defined $service and $service =~ s/\((\d+)\)$//
514 10 0 0 $err and defined $fallback_port
536 0 0 1 @$_ >= 2 and @$_ <= 3
555 30 0 0 defined $arg->{'MultiHomed'} and not $arg->{'MultiHomed'}
563 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'}
565 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'}
567 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'}
649 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
780 4 0 3 defined $self->fileno && !do { *$self }->{'io_socket_ip_connect_in_progress'} && defined getpeername $self
811 0 0 0 defined $AF_INET6 and $family == $AF_INET6
1123 2 2 13 defined $2 and length $2

or 2 conditions

line l !l condition
464 21 13 defined $arg->{'LocalHost'} or defined $arg->{'LocalService'} or 0
571 11 0 $local->{'protocol'} || $peer->{'protocol'} || 0
800 43 0 $xflags || 0

or 3 conditions

line l !l&&r !l&&!r condition
156 0 0 0 $! == 22 or $! == 95
418 0 0 10 defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
452 19 0 16 defined $hints{'socktype'} or defined $hints{'protocol'}
464 18 3 13 defined $arg->{'LocalHost'} or defined $arg->{'LocalService'}
475 18 3 0 defined $host or defined $service
498 10 0 19 defined $arg->{'PeerHost'} or defined $arg->{'PeerService'}
569 17 11 2 $local->{'family'} || $peer->{'family'}
570 17 11 0 $local->{'socktype'} || $peer->{'socktype'}
624 27 3 0 $self->setup or not $blocking
669 3 0 0 $! == 115 or $! == 11
717 1 0 0 $err == 115 || $err == 11
764 2 0 2 CORE::connect $self, $addr or $! == 106
1121 8 9 30 $addr =~ /\A\[($IPv6_re)\](?::([^\s:]*))?\z/ or $addr =~ /\A([^\s:]*):([^\s:]*)\z/