Branch Coverage

blib/lib/IO/Multiplex.pm
Criterion Covered Total %
branch 43 140 30.7


line true false branch
352 0 7 if $$self{'_fhs'}{"$fh"}
359 3 4 if defined $sockopt and 2 == unpack('i', $sockopt)
420 0 4 if $fh and not exists $$self{'_fhs'}{"$fh"}
422 0 4 $fh ? :
424 0 4 $fh ? :
440 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
459 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
461 0 0 if (@_)
462 0 0 if @_
463 0 0 unless $_[0]
482 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
484 0 0 if (@_)
485 0 0 if @_
512 0 4 unless $fh and exists $$self{'_fhs'}{"$fh"}
514 4 0 if (defined $timeout) { }
555 0 4 unless exists $$self{'_timerkeys'}{"$fh"}
587 0 0 if ref($fh) =~ /SSL/ and $fh->can('pending') and $fh->pending
593 14 0 unless (length $rdready)
594 4 10 if (@{$$self{'_timers'};})
603 0 14 unless (defined $numready)
604 0 0 if ($! == 4 or $! == 11) { }
612 0 14 if $heartbeat
615 0 20 unless my $fh = $$self{'_handles'}{$k}
620 0 20 unless exists $$self{'_fhs'}{"$fh"}
631 10 10 if (fd_isset($rdready, $fh))
633 2 8 if ($$self{'_fhs'}{"$fh"}{'listen'}) { }
637 0 2 unless $client
639 2 0 if $obj and $obj->can('mux_connection')
642 6 2 if ($self->is_udp($fh)) { }
644 6 0 if (defined $rv)
652 8 0 if (defined $rv and length $data) { }
657 8 0 if $obj and $obj->can('mux_input')
661 0 0 unless (defined $rv)
663 0 0 if $! == 4 or $! == 11 or $! == 11
666 0 0 if $! != 104
678 0 0 if $obj and $obj->can('mux_eof')
682 0 0 if (exists $$self{'_fhs'}{"$fh"})
686 0 0 unless exists $$self{'_fhs'}{"$fh"} and length $$self{'_fhs'}{"$fh"}{'outbuffer'}
694 0 18 unless exists $$self{'_fhs'}{"$fh"}
696 0 18 if (fd_isset($wrready, $fh))
697 0 0 unless (length $$self{'_fhs'}{"$fh"}{'outbuffer'})
699 0 0 if $obj and $obj->can('mux_outbuffer_empty')
706 0 0 unless (defined $rv)
711 0 0 unless ($! == 11 or $! == 4 or $! == 11)
714 0 0 if ($! == 32) { }
715 0 0 if $obj and $obj->can('mux_epipe')
725 0 0 unless (length $$self{'_fhs'}{"$fh"}{'outbuffer'})
729 0 0 if $obj and $obj->can('mux_outbuffer_empty')
732 0 0 if ($$self{'_fhs'}{"$fh"} and $$self{'_fhs'}{"$fh"}{'shutdown'})
738 0 0 unless (length $$self{'_fhs'}{"$fh"}{'inbuffer'})
748 0 18 unless exists $$self{'_fhs'}{"$fh"}
752 5 7 if @{$$self{'_timers'};}
771 1 4 if $$timer[1] > $time
779 0 4 unless exists $$self{'_fhs'}{"$fh"}
782 4 0 if $obj and $obj->can('mux_timeout')
844 0 6 unless $fh and exists $$self{'_fhs'}{"$fh"}
846 0 6 if ($$self{'_fhs'}{"$fh"}{'shutdown'})
850 6 0 if ($self->is_udp($fh))
851 4 2 if (my $udp_peer = $self->udp_peer($fh)) { }
884 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
886 0 0 if ($which == 0 or $which == 2)
894 0 0 if ($which == 1 or $which == 2)
897 0 0 if (length $$self{'_fhs'}{"$fh"}{'outbuffer'}) { }
905 0 0 unless (length $$self{'_fhs'}{"$fh"}{'inbuffer'} or length $$self{'_fhs'}{"$fh"}{'outbuffer'})
924 0 0 unless exists $$self{'_fhs'}{"$fh"}
927 0 0 if length $$self{'_fhs'}{"$fh"}{'inbuffer'}
928 0 0 if length $$self{'_fhs'}{"$fh"}{'outbuffer'}
937 0 0 if $obj and $obj->can('mux_close')
952 0 7 unless my $flags = fcntl($fh, 3, 0)
954 0 7 unless fcntl $fh, 4, $flags | 2048