Condition Coverage

blib/lib/IO/Socket/IP.pm
Criterion Covered Total %
condition 64 114 56.1


and 3 conditions

line !l l&&!r l&&r condition
387 55 0 0 exists $arg->{'PeerAddr'} and not exists $arg->{'PeerHost'}
390 50 0 5 exists $arg->{'PeerPort'} and not exists $arg->{'PeerService'}
393 55 0 0 exists $arg->{'LocalAddr'} and not exists $arg->{'LocalHost'}
396 42 0 13 exists $arg->{'LocalPort'} and not exists $arg->{'LocalService'}
423 28 11 0 defined $listenqueue and defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
464 39 0 0 not defined $hints{'socktype'} and defined $hints{'protocol'}
485 10 12 1 defined $service and $service =~ s/\((\d+)\)$//u
492 17 5 1 $err and defined $fallback_port
514 0 12 0 defined $service and $service =~ s/\((\d+)\)$//u
519 12 0 0 $err and defined $fallback_port
541 0 0 1 @$_ >= 2 and @$_ <= 3
560 34 0 0 defined $arg->{'MultiHomed'} and not $arg->{'MultiHomed'}
568 15 19 0 defined $local->{'family'} and defined $peer->{'family'}
34 0 0 defined $local->{'family'} and defined $peer->{'family'} and $local->{'family'} != $peer->{'family'}
570 15 19 0 defined $local->{'socktype'} and defined $peer->{'socktype'}
34 0 0 defined $local->{'socktype'} and defined $peer->{'socktype'} and $local->{'socktype'} != $peer->{'socktype'}
572 15 19 0 defined $local->{'protocol'} and defined $peer->{'protocol'}
34 0 0 defined $local->{'protocol'} and defined $peer->{'protocol'} and $local->{'protocol'} != $peer->{'protocol'}
655 34 0 0 defined do { *$self }->{'io_socket_ip_v6only'} and defined $AF_INET6
34 0 0 defined do { *$self }->{'io_socket_ip_v6only'} and defined $AF_INET6 and $info->{'family'} == $AF_INET6
788 6 0 5 defined $self->fileno && !do { *$self }->{'io_socket_ip_connect_in_progress'} && defined getpeername $self
819 0 0 6 defined $AF_INET6 and $family == $AF_INET6
1163 2 2 13 defined $2 and length $2

or 2 conditions

line l !l condition
469 23 15 defined $arg->{'LocalHost'} or defined $arg->{'LocalService'} or !!0
576 13 0 $local->{'protocol'} || $peer->{'protocol'} || 0
808 57 0 $xflags || 0

or 3 conditions

line l !l&&r !l&&!r condition
151 0 0 0 $! == 22 or $! == 95
423 0 0 11 defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
457 23 0 16 defined $hints{'socktype'} or defined $hints{'protocol'}
469 20 3 15 defined $arg->{'LocalHost'} or defined $arg->{'LocalService'}
480 20 3 0 defined $host or defined $service
503 12 0 21 defined $arg->{'PeerHost'} or defined $arg->{'PeerService'}
574 19 13 2 $local->{'family'} || $peer->{'family'}
575 19 13 0 $local->{'socktype'} || $peer->{'socktype'}
629 31 3 0 $self->setup or not $blocking
677 3 0 0 $! == 115 or $! == 11
725 1 0 0 $err == 115 || $err == 11
772 2 0 1 CORE::connect $self, $addr or $! == 106
1161 8 9 34 $addr =~ /\A\[($IPv6_re)\](?::([^\s:]*))?\z/u or $addr =~ /\A([^\s:]*):([^\s:]*)\z/u