Condition Coverage

blib/lib/Mail/SpamAssassin.pm
Criterion Covered Total %
condition 43 176 24.4


and 3 conditions

line !l l&&!r l&&r condition
397 25 0 0 $self->{'debug'} and $self->{'debug'} eq '1'
532 30 0 1 ref $suppl_attrib and exists $suppl_attrib->{'master_deadline'}
812 0 0 0 defined $opts and $opts->{'username'}
817 0 0 0 defined $opts and $opts->{'user_dir'}
822 0 0 0 defined $opts and $opts->{'userstate_dir'}
841 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'}
1116 0 0 0 $ct eq 'message/rfc822' and $cd eq $self->{'conf'}{'encapsulated_content_description'}
1197 0 0 0 $hdrs =~ /^X-Spam-Prev-Subject:\s*\(nonexistent\)$/m and not $hdrs =~ /^Subject:.*\(nonexistent\).*$/m
1373 1 0 0 defined $deal_with_userstate and $deal_with_userstate
1375 0 0 0 defined $v and not ref $v
0 0 0 defined $v and not ref $v and $v =~ /__userstate__/
1619 0 0 0 defined $start and !defined($earliest) || $earliest > $start
1623 0 0 0 defined $end and !defined($latest) || $latest < $end
1626 0 0 0 defined $start and not defined $end
1628 0 0 0 defined $latest && defined $earliest
1694 24 0 0 $self->{'require_rules'} and not $cftext =~ /\S/
1704 0 0 24 $siterules and not $self->{'ignore_site_cf_files'}
1721 0 0 6 $stat_errn == 0 and -f _
1764 24 0 0 $self->{'require_rules'} and not $self->{'conf'}->found_any_rules
1778 1 21 2 $self->{'bayes_scanner'} and $self->{'bayes_scanner'}->is_scan_available
22 0 2 $self->{'bayes_scanner'} and $self->{'bayes_scanner'}->is_scan_available and $self->{'conf'}{'use_bayes_rules'}
1820 2 6 0 -f _ and -s _
8 0 0 -f _ and -s _ and -r _
1894 0 7 0 $stat_errn == 0 and not -d _
7 0 0 $stat_errn != 0 and $stat_errn != 2
1983 0 0 0 $< == 0 and $> == 0
0 0 0 $< == 0 and $> == 0 and defined $user
2006 0 0 0 $userprofile and $userprofile =~ m(^[a-z]\:[/\\])io
2009 0 0 0 $home and $home =~ m(^[a-z]\:[/\\])io
2014 0 0 1 $home and $home =~ m[/]o
2100 94 94 1090 $_ ne '.' and $_ ne '..'
188 545 545 $_ ne '.' and $_ ne '..' and /\.$type$/i
2229 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 25 $self->{'PREFIX'} ||= '/usr/local'
411 0 25 $self->{'DEF_RULES_DIR'} ||= '/usr/local/share/spamassassin'
412 0 25 $self->{'LOCAL_RULES_DIR'} ||= '/etc/mail/spamassassin'
413 0 25 $self->{'LOCAL_STATE_DIR'} ||= '/var/lib/spamassassin'
433 0 25 $self->{'save_pattern_hits'} ||= 0
1092 0 0 $mail_obj->get_mbox_separator || ''
1098 0 0 $mail_obj->get_header('Content-Type') || ''
1632 0 0 $self->{'timers'}{$name}{'elapsed'} || 0
2001 1 0 $self->{'user_dir'} || $ENV{'HOME'} || ''
2004 0 0 $ENV{'USERPROFILE'} || ''

or 3 conditions

line l !l&&r !l&&!r condition
389 0 25 0 ref $class || $class
425 0 0 25 would_log('dbg', 'timing') or $self->{'needed_tags'}{'TIMING'}
429 0 25 0 $self->{'conf'} ||= 'Mail::SpamAssassin::Conf'->new($self)
538 31 0 0 not defined $master_deadline or $time_limit_deadline < $master_deadline
1111 0 0 0 $msg[$i] =~ /^--$boundary\r?$/ or $flag
1116 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'}
1619 0 0 0 !defined($earliest) || $earliest > $start
1623 0 0 0 !defined($latest) || $latest < $end
1633 0 0 0 $total <= 0 || $elapsed >= $total
1673 24 0 0 $siterules ||= $self->first_existing_path(@site_rules_path)
1676 24 0 0 $sysrules ||= $self->first_existing_path(@default_rules_path)
1713 7 0 0 $fname ||= $self->first_existing_path(@default_userprefs_path)
1718 6 0 0 $fname ||= $self->sed_path($default_userprefs_path[-1])
1880 6 1 0 $fname ||= $self->first_existing_path(@default_userstate_dir)
1884 7 0 0 $fname ||= $self->sed_path($default_userstate_dir[-1])
2033 1 0 0 $self->{'PREFIX'} or $Mail::SpamAssassin::Config{'prefix'}
2229 0 0 0 defined $source and ref $source eq 'HASH' or defined $dest and ref $dest eq 'HASH'