Condition Coverage

blib/lib/OpenSMTPd/Filter.pm
Criterion Covered Total %
condition 48 53 90.5


and 3 conditions

line !l l&&!r l&&r condition
118 0 4 2 $params{'on'} && $params{'on'}{'filter'} && $params{'on'}{'filter'}{'smtp-in'} && $params{'on'}{'filter'}{'smtp-in'}{'data-lines'}
135 6 17 85899 not $self->{'_ready'} and &OpenSMTPd::Filter::time() - $now < $timeout
285 2 1 29 defined $suffix and @fields
294 0 7 23 $filter{'subsystem'} eq "smtp-in" and $filter{'phase'} eq "data-line"
315 1 3 3 @ret == 1 and ($decisions->[0] || '') eq "error"
382 3 1 144 $subsystem and $item
4 2 142 $subsystem and $item and my $items = $map->{$subsystem}

or 2 conditions

line l !l condition
83 10 15 $params{'on'} ||= {}
84 5 20 $params{'input'} ||= \*STDIN
85 10 15 $params{'output'} ||= \*STDOUT
96 42 13 shift @{$ms;} || (return)
128 23 0 $fh->blocking // die("Unable to get blocking on input: $!")
129 23 0 $fh->blocking(0) // die("Unable to set input to non-blocking: $!")
136 8 85891 $fh->getline // (next)
143 23 0 $fh->blocking($blocking) // die("Unable to reset blocking on input: $!")
183 142 1 $line //= "undef"
185 142 1 $type //= "unsupported"
221 110 1 $report{'event'} // ""
230 101 7 $self->{'_sessions'}{$report{'session'}} ||= {}
288 31 1 $filter{'session'} or ""
315 4 2 $decisions->[0] || ''
339 17 6 $line //= ""
399 119 304 $cb->{$_} || {}