Branch Coverage

blib/lib/IO/Multiplex.pm
Criterion Covered Total %
branch 43 142 30.2


line true false branch
352 0 7 if $$self{'_fhs'}{"$fh"}
359 3 4 if defined $sockopt and 2 == unpack('i', $sockopt)
389 0 0 if (my $x = tied $fh)
423 0 4 if $fh and not exists $$self{'_fhs'}{"$fh"}
425 0 4 $fh ? :
427 0 4 $fh ? :
443 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
462 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
464 0 0 if (@_)
465 0 0 if @_
466 0 0 unless $_[0]
485 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
487 0 0 if (@_)
488 0 0 if @_
515 0 4 unless $fh and exists $$self{'_fhs'}{"$fh"}
517 4 0 if (defined $timeout) { }
558 0 4 unless exists $$self{'_timerkeys'}{"$fh"}
590 0 0 if ref($fh) =~ /SSL/ and $fh->can('pending') and $fh->pending
596 14 0 unless (length $rdready)
597 4 10 if (@{$$self{'_timers'};})
606 0 14 unless (defined $numready)
607 0 0 if ($! == 4 or $! == 11) { }
615 0 14 if $heartbeat
618 0 19 unless my $fh = $$self{'_handles'}{$k}
623 0 19 unless exists $$self{'_fhs'}{"$fh"}
634 10 9 if (fd_isset($rdready, $fh))
636 2 8 if ($$self{'_fhs'}{"$fh"}{'listen'}) { }
640 0 2 unless $client
642 2 0 if $obj and $obj->can('mux_connection')
645 6 2 if ($self->is_udp($fh)) { }
647 6 0 if (defined $rv)
655 8 0 if (defined $rv and length $data) { }
660 8 0 if $obj and $obj->can('mux_input')
664 0 0 unless (defined $rv)
666 0 0 if $! == 4 or $! == 11 or $! == 11
669 0 0 if $! != 104
681 0 0 if $obj and $obj->can('mux_eof')
685 0 0 if (exists $$self{'_fhs'}{"$fh"})
689 0 0 unless exists $$self{'_fhs'}{"$fh"} and length $$self{'_fhs'}{"$fh"}{'outbuffer'}
697 0 17 unless exists $$self{'_fhs'}{"$fh"}
699 0 17 if (fd_isset($wrready, $fh))
700 0 0 unless (length $$self{'_fhs'}{"$fh"}{'outbuffer'})
702 0 0 if $obj and $obj->can('mux_outbuffer_empty')
709 0 0 unless (defined $rv)
714 0 0 unless ($! == 11 or $! == 4 or $! == 11)
717 0 0 if ($! == 32) { }
718 0 0 if $obj and $obj->can('mux_epipe')
728 0 0 unless (length $$self{'_fhs'}{"$fh"}{'outbuffer'})
732 0 0 if $obj and $obj->can('mux_outbuffer_empty')
735 0 0 if ($$self{'_fhs'}{"$fh"} and $$self{'_fhs'}{"$fh"}{'shutdown'})
741 0 0 unless (length $$self{'_fhs'}{"$fh"}{'inbuffer'})
751 0 17 unless exists $$self{'_fhs'}{"$fh"}
755 5 7 if @{$$self{'_timers'};}
774 1 4 if $$timer[1] > $time
782 0 4 unless exists $$self{'_fhs'}{"$fh"}
785 4 0 if $obj and $obj->can('mux_timeout')
847 0 6 unless $fh and exists $$self{'_fhs'}{"$fh"}
849 0 6 if ($$self{'_fhs'}{"$fh"}{'shutdown'})
853 6 0 if ($self->is_udp($fh))
854 4 2 if (my $udp_peer = $self->udp_peer($fh)) { }
887 0 0 unless $fh and exists $$self{'_fhs'}{"$fh"}
889 0 0 if ($which == 0 or $which == 2)
897 0 0 if ($which == 1 or $which == 2)
900 0 0 if (length $$self{'_fhs'}{"$fh"}{'outbuffer'}) { }
908 0 0 unless (length $$self{'_fhs'}{"$fh"}{'inbuffer'} or length $$self{'_fhs'}{"$fh"}{'outbuffer'})
927 0 0 unless exists $$self{'_fhs'}{"$fh"}
930 0 0 if length $$self{'_fhs'}{"$fh"}{'inbuffer'}
931 0 0 if length $$self{'_fhs'}{"$fh"}{'outbuffer'}
940 0 0 if $obj and $obj->can('mux_close')
955 0 7 unless my $flags = fcntl($fh, 3, 0)
957 0 7 unless fcntl $fh, 4, $flags | 2048