Condition Coverage

blib/lib/Mail/SpamAssassin.pm
Criterion Covered Total %
condition 44 176 25.0


and 3 conditions

line !l l&&!r l&&r condition
397 36 0 0 $self->{'debug'} and $self->{'debug'} eq '1'
531 42 0 1 ref $suppl_attrib and exists $suppl_attrib->{'master_deadline'}
813 0 0 0 defined $opts and $opts->{'username'}
818 0 0 0 defined $opts and $opts->{'user_dir'}
823 0 0 0 defined $opts and $opts->{'userstate_dir'}
842 0 0 0 $self->{'bayes_scanner'} and $self->{'bayes_scanner'}->is_scan_available
0 0 0 $self->{'bayes_scanner'} and $self->{'bayes_scanner'}->is_scan_available and $self->{'conf'}{'use_bayes_rules'}
1117 0 0 0 $ct eq 'message/rfc822' and $cd eq $self->{'conf'}{'encapsulated_content_description'}
1198 0 0 0 $hdrs =~ /^X-Spam-Prev-Subject:\s*\(nonexistent\)$/m and not $hdrs =~ /^Subject:.*\(nonexistent\).*$/m
1374 1 0 0 defined $deal_with_userstate and $deal_with_userstate
1376 0 0 0 defined $v and not ref $v
0 0 0 defined $v and not ref $v and $v =~ /__userstate__/
1620 0 0 0 defined $start and !defined($earliest) || $earliest > $start
1624 0 0 0 defined $end and !defined($latest) || $latest < $end
1627 0 0 0 defined $start and not defined $end
1629 0 0 0 defined $latest && defined $earliest
1695 22 1 0 $self->{'require_rules'} and not $cftext =~ /\S/
1705 0 0 23 $siterules and not $self->{'ignore_site_cf_files'}
1722 0 0 6 $stat_errn == 0 and -f _
1765 34 1 0 $self->{'require_rules'} and not $self->{'conf'}->found_any_rules
1779 13 20 2 $self->{'bayes_scanner'} and $self->{'bayes_scanner'}->is_scan_available
33 0 2 $self->{'bayes_scanner'} and $self->{'bayes_scanner'}->is_scan_available and $self->{'conf'}{'use_bayes_rules'}
1821 0 6 0 -f _ and -s _
6 0 0 -f _ and -s _ and -r _
1895 0 7 0 $stat_errn == 0 and not -d _
7 0 0 $stat_errn != 0 and $stat_errn != 2
1984 0 0 0 $< == 0 and $> == 0
0 0 0 $< == 0 and $> == 0 and defined $user
2007 0 0 0 $userprofile and $userprofile =~ m(^[a-z]\:[/\\])io
2010 0 0 0 $home and $home =~ m(^[a-z]\:[/\\])io
2015 0 0 1 $home and $home =~ m[/]o
2101 92 92 1168 $_ ne '.' and $_ ne '..'
184 588 580 $_ ne '.' and $_ ne '..' and /\.$type$/i
2238 0 0 0 defined $source and ref $source eq 'HASH'
0 0 0 defined $dest and ref $dest eq 'HASH'

or 2 conditions

line l !l condition
410 0 36 $self->{'PREFIX'} ||= '/usr/local'
411 0 36 $self->{'DEF_RULES_DIR'} ||= '/usr/local/share/spamassassin'
412 0 36 $self->{'LOCAL_RULES_DIR'} ||= '/etc/mail/spamassassin'
413 0 36 $self->{'LOCAL_STATE_DIR'} ||= '/var/lib/spamassassin'
432 0 36 $self->{'save_pattern_hits'} ||= 0
1093 0 0 $mail_obj->get_mbox_separator || ''
1099 0 0 $mail_obj->get_header('Content-Type') || ''
1633 0 0 $self->{'timers'}{$name}{'elapsed'} || 0
2002 1 0 $self->{'user_dir'} || $ENV{'HOME'} || ''
2005 0 0 $ENV{'USERPROFILE'} || ''

or 3 conditions

line l !l&&r !l&&!r condition
389 0 36 0 ref $class || $class
425 0 0 36 would_log('dbg', 'timing') or $self->{'needed_tags'}{'TIMING'}
429 0 36 0 $self->{'conf'} ||= 'Mail::SpamAssassin::Conf'->new($self)
537 43 0 0 not defined $master_deadline or $time_limit_deadline < $master_deadline
1112 0 0 0 $msg[$i] =~ /^--$boundary\r?$/ or $flag
1117 0 0 0 $ct =~ m[^(?:message/rfc822|text/plain);\s+x-spam-type=original] or $ct eq 'message/rfc822' and $cd eq $self->{'conf'}{'encapsulated_content_description'}
1620 0 0 0 !defined($earliest) || $earliest > $start
1624 0 0 0 !defined($latest) || $latest < $end
1634 0 0 0 $total <= 0 || $elapsed >= $total
1674 23 0 0 $siterules ||= $self->first_existing_path(@site_rules_path)
1677 23 0 0 $sysrules ||= $self->first_existing_path(@default_rules_path)
1714 7 0 0 $fname ||= $self->first_existing_path(@default_userprefs_path)
1719 6 0 0 $fname ||= $self->sed_path($default_userprefs_path[-1])
1881 6 1 0 $fname ||= $self->first_existing_path(@default_userstate_dir)
1885 7 0 0 $fname ||= $self->sed_path($default_userstate_dir[-1])
2034 1 0 0 $self->{'PREFIX'} or $Mail::SpamAssassin::Config{'prefix'}
2238 0 0 0 defined $source and ref $source eq 'HASH' or defined $dest and ref $dest eq 'HASH'