Condition Coverage

blib/lib/IO/Async/Stream.pm
Criterion Covered Total %
condition 71 101 70.3


and 2 conditions

line l !l condition
856 0 0 carp("Cannot write data to a Stream that is closing") and return

and 3 conditions

line !l l&&!r l&&r condition
401 0 1 0 defined $low and not defined $high
402 0 1 0 defined $high and not defined $low
404 0 0 1 defined $low and defined $high
0 1 0 defined $low and defined $high and $low > $high
421 983 5 5 $self->loop and $self->read_handle
426 863 68 62 $self->{'autoflush'} and my $write_handle = $self->write_handle
753 0 170 18 $head = $writequeue->[0] and ref $head->data
754 0 0 6 &blessed(scalar $head->data) and $head->data->isa("Future")
761 1 5 1 not ref $data and my $encoding = $self->{'encoding'}
778 1 2 1 not ref $data and my $encoding = $self->{'encoding'}
790 162 8 1 $second = $writequeue->[1] and not ref $second->data
170 0 1 $second = $writequeue->[1] and not ref $second->data and $head->writelen == $second->writelen
8 0 1 $second = $writequeue->[1] and not ref $second->data and $head->writelen == $second->writelen and not $head->on_write
0 0 1 $second = $writequeue->[1] and not ref $second->data and $head->writelen == $second->writelen and not $head->on_write and not $second->on_write
0 0 1 $second = $writequeue->[1] and not ref $second->data and $head->writelen == $second->writelen and not $head->on_write and not $second->on_write and not $head->on_flush
837 122 39 0 $IO::Async::Stream::METRICS and $IO::Async::Stream::METRICS->inc_counter_by("stream_written", $len)
862 132 36 1 not $handle and $self->loop
864 7 159 2 not ref $data and my $encoding = $self->{'encoding'}
906 104 0 104 not $self->_is_empty and $self->_flush_one_write
935 1 5 66 not $self->_is_empty and $self->_flush_one_write
6 62 4 not $self->_is_empty and $self->_flush_one_write and $self->{'write_all'}
957 1135 0 17 $readqueue->[0] and my $on_read = $readqueue->[0]->on_read
964 1149 2 1 defined $self->{'read_low_watermark'} and $self->{'at_read_high_watermark'}
2 0 1 defined $self->{'read_low_watermark'} and $self->{'at_read_high_watermark'} and length $self->{'readbuff'} < $self->{'read_low_watermark'}
970 1134 4 13 @$readqueue and not defined $ret
980 637 306 195 $ret && (length $self->{'readbuff'} > 0 || $eof)
1033 420 45 0 $IO::Async::Stream::METRICS and $IO::Async::Stream::METRICS->inc_counter_by("stream_read", $len)
1061 460 0 1 defined $self->{'read_high_watermark'} and length $self->{'readbuff'} >= $self->{'read_high_watermark'}
1110 11 1 1 length $self->{'readbuff'} and $self->_flush_one_read(0)

or 3 conditions

line l !l&&r !l&&!r condition
394 1 0 992 exists $params{'read_high_watermark'} or exists $params{'read_low_watermark'}
538 3 0 6 $errno == 11 || $errno == 11 || $errno == 4
815 1 0 2 $errno == 11 or $errno == 11
1209 0 4 0 $eof or length $$buffref >= $len