Condition Coverage

blib/lib/Mail/SpamAssassin/Conf/Parser.pm
Criterion Covered Total %
condition 58 127 45.6


and 3 conditions

line !l l&&!r l&&r condition
211 18153 0 182 $cmd->{'aliases'} and scalar @{$cmd->{'aliases'};} > 0
267 50346 0 0 $keepmetadata and $line =~ /^\#testrules/
275 0 0 0 defined $_ and $_ ne '(no file)'
424 0 0 0 $cmd->{'is_priv'} and not $conf->{'allow_user_rules'}
442 60225 8949 0 $ret and $ret eq $Mail::SpamAssassin::Conf::INVALID_VALUE
60225 8949 0 $ret and $ret eq $Mail::SpamAssassin::Conf::INVALID_HEADER_FIELD_NAME
60225 8949 0 $ret and $ret eq $Mail::SpamAssassin::Conf::MISSING_REQUIRED_VALUE
608 0 0 156 $module->can($meth) and $fn_name eq 'has' || &{$method;}()
732 0 0 210 defined $value and not $value =~ /^$/
746 0 0 0 defined $value and not $value =~ /^$/
762 0 0 96 defined $value and not $value =~ /^$/
784 0 0 122 defined $value and not $value =~ /^$/
794 0 0 0 defined $value and not $value =~ /^$/
804 0 0 44 defined $value and not $value =~ /^$/
818 0 0 3715 defined $v and $v ne ''
828 0 0 0 defined $value and not $value =~ /^$/
837 0 0 0 defined $value and not $value =~ /^$/
1216 1888 0 0 length $name > 40 and not $name =~ /^__/
1888 0 0 length $name > 40 and not $name =~ /^__/ and not $name =~ /^T_/

or 2 conditions

line l !l condition
237 0 90 $lang ||= 'C'
655 1403 1016 $conf->{'tflags'}{$k} || ''
884 199 3438 $conf->{'priority'}{$name} || 0
1069 65 904 $conf->{'tflags'}{$name} || ''
1087 0 2 $conf->{'priority'}{$name} || 0
1295 0 130 $conf->{'priority'}{$name} ||= 500
1298 0 3508 $conf->{'priority'}{$name} ||= 0
1300 130 3508 $conf->{'priority'}{$name} ||= 0

or 3 conditions

line l !l&&r !l&&!r condition
157 0 91 0 ref $class || $class
208 1183 17152 0 $cmd->{'command'} || $cmd->{'setting'}
234 0 0 90 $lang ||= $ENV{'LC_ALL'}
235 0 0 90 $lang ||= $ENV{'LC_MESSAGES'}
236 0 0 90 $lang ||= $ENV{'LANG'}
608 0 156 0 $fn_name eq 'has' || &{$method;}()
724 0 0 0 not defined $value or $value eq ''
768 0 63 33 $value eq 'yes' or $value eq '1'
0 33 0 $value eq 'no' or $value eq '0'
851 0 122 0 not defined $value or $value eq ''
1012 2185 3 1611 $token =~ tr[0-9A-Z_a-z](\000-/:-@[-^`{-\377)c or substr($token, 0, 1) =~ tr/A-Z_a-z/\000-@[-^`{-\377/c
1066 2669 0 969 $type & 1 or $type eq $Mail::SpamAssassin::Conf::TYPE_EMPTY_TESTS
1089 1 0 1 not defined $first or $priority < $first_pri
1172 2 32 4 $net->{'exclude'} || $nt->contains_net($net)
1225 1888 0 1750 $self->{'conf'}{'lint_rules'} || $self->{'conf'}{'ignore_always_matching_regexps'}
1228 229 0 3409 $type == $Mail::SpamAssassin::Conf::TYPE_BODY_TESTS or $type == $Mail::SpamAssassin::Conf::TYPE_FULL_TESTS
229 0 3409 $type == $Mail::SpamAssassin::Conf::TYPE_BODY_TESTS or $type == $Mail::SpamAssassin::Conf::TYPE_FULL_TESTS or $type == $Mail::SpamAssassin::Conf::TYPE_RAWBODY_TESTS
0 61 3348 $type == $Mail::SpamAssassin::Conf::TYPE_BODY_TESTS or $type == $Mail::SpamAssassin::Conf::TYPE_FULL_TESTS or $type == $Mail::SpamAssassin::Conf::TYPE_RAWBODY_TESTS or $type == $Mail::SpamAssassin::Conf::TYPE_URI_TESTS