Condition Coverage

blib/lib/Future/PP.pm
Criterion Covered Total %
condition 135 165 81.8


and 3 conditions

line !l l&&!r l&&r condition
89 2 1 5 $self->{'ready'} and $self->{'reported'} || !$self->{'failure'}
97 2 0 1 $self->{'ready'} and $self->{'failure'}
116 17 0 61 $self->{'ready'} && !$self->{'failure'} && !$self->{'cancelled'}
122 2 1 6 $self->{'ready'} && !!$self->{'failure'}
152 3 193 0 $_->[0] and $_->[0]->_revoke_on_cancel($_->[1])
167 272 0 63 &blessed($code) && $code->isa('Future')
169 123 172 40 $done and not $flags & 1
170 246 46 3 $fail and not $flags & 2
171 218 42 32 $cancelled and not $flags & 4
192 21 3 35 $done and $flags & 32
3 3 18 $fail and $flags & 64
214 3 0 42 &blessed($f2) and $f2->isa("Future")
307 106 0 222 &blessed($code) && $code->isa('Future')
354 82 88 3 @$on_cancel >= 8 and $self->{'empty_on_cancel_slots'} >= "0.5" * @$on_cancel
370 126 0 37 &blessed($code) && $code->isa('Future')
409 2 4 3 !ref($exception) && $exception =~ /\n$/
435 63 0 26 &blessed($code) && $code->isa('Future')
467 26 0 62 &blessed($code) && $code->isa('Future')
495 22 0 20 &blessed($code) && $code->isa('Future')
562 10 26 2 $f1->is_done and not $flags & 32
26 9 1 $f1->{'failure'} and not $flags & 64
583 8 0 21 &blessed($fseq) and $fseq->isa("Future")
614 2 1 47 $done_code and not @catch_list
3 3 44 $done_code and not @catch_list and not $fail_code
678 0 1 10 $done_code and not @catch_list
1 7 3 $done_code and not @catch_list and not $fail_code
744 0 0 89 &blessed($sub) and $sub->isa("Future")
760 0 3 5 $sub and not $sub->{'ready'}
824 19 1 2 $sub->{'ready'} and not $sub->{'cancelled'}
849 5 6 2 --$pending and $_[0]{'cancelled'}
895 24 1 1 $sub->{'ready'} and $sub->{'failure'}
970 15 2 2 $sub->{'ready'} and not $sub->{'failure'}
17 1 1 $sub->{'ready'} and not $sub->{'failure'} and not $sub->{'cancelled'}
1003 7 4 2 --$pending and $_[0]{'cancelled'}
1049 1 2 15 $_->{'ready'} and not $_->{'failure'}

or 3 conditions

line l !l&&r !l&&!r condition
56 452 0 0 &reftype($cb) eq "CODE" or overload::Method($cb, "&{}")
66 140 558 0 ref $proto || $proto
89 0 5 1 $self->{'reported'} || !$self->{'failure'}
159 96 107 333 $fail || $cancelled
192 35 18 6 $done and $flags & 32 or $fail and $flags & 64
308 222 106 0 $is_future or _callable($code)
371 37 126 0 $is_future or _callable($code)
376 10 2 26 $fail || $self->{'cancelled'}
436 26 63 0 $is_future or _callable($code)
440 10 2 15 $self->{'failure'} or $self->{'cancelled'}
468 62 26 0 $is_future or _callable($code)
552 12 100 0 $flags & 384 or _callable($code)
562 2 2 34 $f1->is_done and not $flags & 32 or $f1->{'failure'} and not $flags & 64
749 80 7 0 ref $_ eq "Future" or $self = $_->new, last
752 7 42 0 $self ||= "Future"->new
781 4 15 0 $_->{'ready'} or ++$pending
847 4 2 13 $self->{'result'} or $self->{'failure'}
909 1 23 0 $_->{'ready'} or ++$pending
921 0 5 18 $self->{'result'} or $self->{'failure'}
1001 2 0 13 $self->{'result'} or $self->{'failure'}