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
386 51 0 0 exists $arg->{'PeerAddr'} and not exists $arg->{'PeerHost'}
389 46 0 5 exists $arg->{'PeerPort'} and not exists $arg->{'PeerService'}
392 51 0 0 exists $arg->{'LocalAddr'} and not exists $arg->{'LocalHost'}
395 40 0 11 exists $arg->{'LocalPort'} and not exists $arg->{'LocalService'}
422 25 10 0 defined $listenqueue and defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
463 35 0 0 not defined $hints{'socktype'} and defined $hints{'protocol'}
484 10 10 1 defined $service and $service =~ s/\((\d+)\)$//
491 15 5 1 $err and defined $fallback_port
513 0 10 0 defined $service and $service =~ s/\((\d+)\)$//
518 10 0 0 $err and defined $fallback_port
540 0 0 1 @$_ >= 2 and @$_ <= 3
559 30 0 0 defined $arg->{'MultiHomed'} and not $arg->{'MultiHomed'}
567 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'}
569 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'}
571 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
784 4 0 3 defined $self->fileno && !do { *$self }->{'io_socket_ip_connect_in_progress'} && defined getpeername $self
815 0 0 0 defined $AF_INET6 and $family == $AF_INET6
1155 2 2 13 defined $2 and length $2

or 2 conditions

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

or 3 conditions

line l !l&&r !l&&!r condition
156 0 0 0 $! == 22 or $! == 95
422 0 0 10 defined $arg->{'PeerHost'} || defined $arg->{'PeerService'} || defined $arg->{'PeerAddrInfo'}
456 19 0 16 defined $hints{'socktype'} or defined $hints{'protocol'}
468 18 3 13 defined $arg->{'LocalHost'} or defined $arg->{'LocalService'}
479 18 3 0 defined $host or defined $service
502 10 0 19 defined $arg->{'PeerHost'} or defined $arg->{'PeerService'}
573 17 11 2 $local->{'family'} || $peer->{'family'}
574 17 11 0 $local->{'socktype'} || $peer->{'socktype'}
628 27 3 0 $self->setup or not $blocking
673 3 0 0 $! == 115 or $! == 11
721 1 0 0 $err == 115 || $err == 11
768 2 0 2 CORE::connect $self, $addr or $! == 106
1153 8 9 30 $addr =~ /\A\[($IPv6_re)\](?::([^\s:]*))?\z/ or $addr =~ /\A([^\s:]*):([^\s:]*)\z/