Condition Coverage

lib/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm
Criterion Covered Total %
condition 92 151 60.9


and 3 conditions

line !l l&&!r l&&r condition
163 42 0 0 $self->{'show_progress'} and $progress
239 210 2310 4 $base1 ne $base2 and $base1 =~ /\Q$base2\E/
262 15 0 0 $self->{'show_progress'} and $progress
315 0 0 128 $base and $set1->{'name'}
338 128 0 0 $self->{'show_progress'} and $progress
348 1644 17 24 $base1 eq $set2->[0] and $name1 eq $set2->[1]
1661 0 24 $base1 eq $set2->[0] and $name1 eq $set2->[1] and $orig1 eq $set2->[2]
367 33 0 0 $set2->[5] and index($set2->[1], $name1) > -1
33 0 0 $set2->[5] and index($set2->[1], $name1) > -1 and $set2->[1] =~ /(?: |^)\Q$name1\E(?: |$)/
371 22 11 0 $set1->[5] and index($set1->[1], $set2->[1]) > -1
33 0 0 $set1->[5] and index($set1->[1], $set2->[1]) > -1 and $set1->[1] =~ /(?: |^)\Q$set2->[1]\E(?: |$)/
406 15 0 0 $self->{'show_progress'} and $progress
652 89 395 142 not $spcs and $item =~ /^EXACT/
484 0 142 not $spcs and $item =~ /^EXACT/ and $args =~ /<(.*)>/
89 205 190 not $spcs and $item =~ /^_moretrie/
294 0 190 not $spcs and $item =~ /^_moretrie/ and $args =~ /<(.*)>/
285 0 9 $item =~ /^EXACT/ and $prevop
285 3 6 $item =~ /^EXACT/ and $prevop and not $prevop->[0]
3 6 0 $item =~ /^EXACT/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/
9 0 0 $item =~ /^EXACT/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/ and $prevop->[2] =~ /\{(\d+),/
6 0 0 $item =~ /^EXACT/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/ and $prevop->[2] =~ /\{(\d+),/ and $1 >= 1
0 0 0 $item =~ /^EXACT/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/ and $prevop->[2] =~ /\{(\d+),/ and $1 >= 1 and $args =~ /<(.*)>/
276 0 18 $item =~ /^_moretrie/ and $prevop
276 13 5 $item =~ /^_moretrie/ and $prevop and not $prevop->[0]
13 0 5 $item =~ /^_moretrie/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/
13 0 5 $item =~ /^_moretrie/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/ and $prevop->[2] =~ /\{(\d+),/
0 0 5 $item =~ /^_moretrie/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/ and $prevop->[2] =~ /\{(\d+),/ and $1 >= 1
0 0 5 $item =~ /^_moretrie/ and $prevop and not $prevop->[0] and $prevop->[1] =~ /^CURLYX/ and $prevop->[2] =~ /\{(\d+),/ and $1 >= 1 and $args =~ /<(.*)>/
660 142 0 0 length $str >= 55 and $buf =~ s/\.\.\.$//
669 186 0 4 length $1 >= 55 and $buf =~ s/\.\.\.$//
681 0 0 0 length $1 >= 55 and $buf =~ s/\.\.\.$//
693 5 0 0 length $1 >= 60 and $buf =~ s/\.\.\.$//
792 24 163 0 scalar @ops > 1 and $ops[0][1] =~ /^BRANCH/
812 546 174 7 $item =~ /^EXACT/ and defined $open_spcs
863 278 100 9 defined $branch_spcs and $branch_spcs eq $spcs
378 0 9 defined $branch_spcs and $branch_spcs eq $spcs and $item =~ /^BRANCH/
278 100 0 defined $branch_spcs and $branch_spcs eq $spcs
378 0 0 defined $branch_spcs and $branch_spcs eq $spcs and $item eq "TAIL"
100 135 143 defined $trie_spcs and $trie_spcs eq $spcs
235 8 135 defined $trie_spcs and $trie_spcs eq $spcs and $item eq "_moretrie"
33 158 52 defined $open_spcs and $open_spcs eq $spcs
191 0 52 defined $open_spcs and $open_spcs eq $spcs and $item =~ /^CLOSE/

or 2 conditions

line l !l condition
148 0 0 scalar keys %{$rules;} || 1
304 0 0 scalar @good_bases || 1

or 3 conditions

line l !l&&r !l&&!r condition
85 0 15 0 ref $class || $class
218 37 25 70 not defined $minlen or $len < $minlen
223 0 5 37 $is_a_replacetags_rule or not $minlen
5 0 37 $is_a_replacetags_rule or not $minlen or not @bases
327 272 102 44 $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::b->[3] <=> $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::a->[3] or $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::a->[0] cmp $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::b->[0]
374 15 29 $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::b->[3] <=> $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::a->[3] or $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::a->[0] cmp $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::b->[0] or $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::a->[1] cmp $Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor::b->[1]
348 0 1678 7 not $set2->[0] or $base1 eq $set2->[0] and $name1 eq $set2->[1] and $orig1 eq $set2->[2]