Condition Coverage

blib/lib/IO/Uncompress/Base.pm
Criterion Covered Total %
condition 82 107 76.6


and 3 conditions

line !l l&&!r l&&r condition
69 0 1570 724 defined $status and $status > 0
579 0 568 0 $haveOut and $x->{'Hash'}
734 436 0 120 $x->{'outType'} eq "filename" and $output ne "-"
351 15 70 $x->{'outType'} eq "handle" and $x->{'Got'}->getValue("autoclose")
1148 325459 3987 3274 not length *$self->{'Pending'} and *$self->{'EndStream'}
1151 7002 322424 20 defined $length and $length == 0
1170 2685 916 4050 not *$self->{'EndStream'} and $len == 0
1181 95809 226610 2494 not *$self->{'EndStream'} and length $out_buffer < $length
1222 1340 0 85 ref $/ eq "SCALAR" and ${$/;} =~ /^\d+$/
1340 0 85 ref $/ eq "SCALAR" and ${$/;} =~ /^\d+$/ and ${$/;} > 0
1271 1248 232 555 not length *$self->{'Pending'} and *$self->{'EndStream'}
1376 188 0 1941 !*$self->{'Handle'} || *$self->{'AutoClose'} and not *$self->{'StdIO'}
1381 0 1941 0 not *$self->{'InNew'} and $self->saveStatus($!) != 0

or 2 conditions

line l !l condition
143 0 120 shift() || 0
471 0 3620 $got->getValue('prime') || ''
1128 35 332685 $_[2] || 0
1153 322424 7002 $length || 0

or 3 conditions

line l !l&&r !l&&!r condition
117 0 3270 8336 not defined $_[0] or length $_[0] == 0
119 4511 0 3825 defined *$self->{'FH'} or defined *$self->{'InputEvent'}
204 1478 0 13413 length *$self->{'Prime'} or *$self->{'PushMode'}
349 0 3532 0 shift() || IO::Compress::Base::Parameters::new()
391 3642 0 5 @_ or $got
414 1450 0 2175 $inType eq "buffer" or $inType eq "code"
461 678 2207 735 $append_mode || $got->getValue('append')
468 14 1295 2311 $got->getValue('parseextra') || $got->getValue('strict')
649 20 0 20 $x->{'inType'} eq 'filenames' || $x->{'inType'} eq 'filename'
734 120 260 176 $x->{'outType'} eq "filename" and $output ne "-" or $x->{'outType'} eq "handle" and $x->{'Got'}->getValue("autoclose")
782 18 608 56 $status < 0 or $z->smartEof
917 23 4124 668 defined *$self->{'CompressedInputLengthDone'} || $self->smartEof
1019 76 0 330 $self =~ /IO::Uncompress::RawInflate/ or *$self->{'MultiStream'}
1055 90 101 3 not *$self->{'Transparent'} or $self->eof
1160 322419 0 7002 $length or $offset
1271 0 1696 339 *$self->{'Closed'} or not length *$self->{'Pending'} and *$self->{'EndStream'}
1280 0 28 1452 $status < 0 or length $$lineref == 0
1324 24 0 10 defined *$self->{'FH'} or defined *$self->{'InputEvent'}
1341 63 0 2589 *$self->{'Closed'} || !length(*$self->{'Pending'}) && ($self->smartEof || *$self->{'EndStream'})
1376 1673 268 188 !*$self->{'Handle'} || *$self->{'AutoClose'}