Branch Coverage

lib/MIME/AltWords.pm
Criterion Covered Total %
branch 111 144 77.0


line true false branch
123 79 71 if ($S =~ /\A(?:iso-?(?:8859-?)?|8859-?)(\d+)\Z(?!\n)/i) { }
45 26 elsif ($S =~ /\AUTF-?8\Z(?!\n)/i) { }
3 23 elsif ($S =~ /\A(?:US-)ASCII\Z(?!\n)/i) { }
134 29 68 if ($opts->{'Encoding'} eq 'B') { }
68 0 elsif ($opts->{'Encoding'} eq 'Q') { }
140 109 197 defined $1 ? :
163 29 61 if $opts->{'Encoding'} eq 'B'
167 84 6 if ($opts->{'Shorts'}) { }
172 85 6 if $J > length $src
173 25 66 if ($opts->{'Charset'} eq 'UTF-8')
174 0 25 if (substr($src, $J, 1) =~ tr/\200-\277//)
176 0 0 if $J > $I + 1 and substr($src, $J - 1, 1) =~ tr/\300-\377//
185 7 57 if ($opts->{'Encoding'} eq 'Q' and $addlen > $maxlen and $addlen > 3)
189 3 45 if (substr($dst, $K - 3, 1) eq '=') { }
207 0 0 defined $2 ? :
229 2603 363 $K == $I ? :
231 0 2878 if ($C eq "\n") { }
65 2813 elsif ($C eq ' ') { }
235 18 70 if ($K > $I and $J > $I + $maxlen)
240 74 14 if ($J + $maxlen >= length $S)
307 0 80 unless defined $S
313 41 39 unless defined $opts{'Raw'}
314 28 52 unless defined $opts{'Charset'}
315 0 80 unless defined $opts{'Charset'}
317 46 34 if ($opts{'Raw'})
323 8 71 defined $opts{'Encoding'} ? :
324 75 4 if $opts{'Encoding'} ne 'B'
325 23 56 if $opts{'Encoding'} eq 'Q' and $opts{'Charset'} eq 'UTF-8'
331 73 6 unless defined $opts{'Shorts'}
332 45 34 unless defined $opts{'Whole'}
333 79 0 unless defined $opts{'Space'}
334 79 0 unless defined $opts{'Split'}
335 61 18 unless defined $opts{'Keeptrailnl'}
337 18 61 if $opts{'Keeptrailnl'} and $S =~ s/(\n)\Z(?!\n)//
338 6 73 if (not $opts{'Shorts'}) { }
46 27 elsif ($opts{'Whole'}) { }
341 43 3 if ($S =~ /$MIME::AltWords::NONPRINT/o)
345 46 0 if $opts{'Split'}
355 41 0 unless defined $D
359 29 0 if ($I + $srclen != length $S and substr($src, -1) eq ' ' and $S =~ / |\Z(?!\n)|($MIME::AltWords::NONPRINT)/cog and not defined $1)
364 0 41 if 1 > length $src
372 12 15 if 0 < length $opts{'Space'} and length $S == $lastpos
373 27 0 if $opts{'Split'}
464 50 100 if pos $encstr >= length $encstr
468 64 36 if ($encstr =~ /\G # from where we left off.. =\?([^?]*) # "=?" + charset + \?([bq]) # "?" + encoding + \?([^?]+) # "?" + data maybe with spcs + \?= # "?=" /gix)
475 34 30 $encoding eq 'q' ? :
483 0 36 if ($encstr =~ /\G=\?/gx)
491 36 0 if ($encstr =~ /\G # from where we left off... ([\x00-\xFF]*? # shortest possible string, \n*) # followed by 0 or more NLs, (?=(\Z|=\?)) # terminated by "=?" or EOS /gx)
496 0 36 unless length $1
501 0 0 if ($encstr =~ /\G([\x00-\xFF]*)[^\x00-\xFF]+/g)
503 0 0 if 0 != length $1
511 50 0 wantarray ? :
522 27 3 if $charset and !@L || $L[-1] ne $charset
524 5 18 if @L != 1
589 23 27 if wantarray
591 19 8 unless defined $opts{'Raw'}
597 16 11 if $opts{'Raw'} and not defined $opts{'Charset'}
600 34 21 $token->[1] ? :
601 42 13 if $opts{'Raw'}
644 3 45 if $charset eq 'UTF-8' or $charset eq 'UTF8'
646 9 36 $@ ? :
659 39 9 if &is_encodable($_[0], $charset)
670 3 3 $_[1] eq 'addresses' ? :
683 3 3 $_[1] eq 'addresses' ? :
687 5 8 if (&canonical_charset($charset2) eq $charset)
691 1 5 unless defined $best_charset
693 5 1 $charset eq $best_charset ? :
703 0 1 if ($main::DEBUG)
714 0 0 if (open my $log, '>> /tmp/em.log')
730 0 0 if (wantarray) { }
733 0 0 if (open my $log, '>> /tmp/em.log')
745 0 0 if (open my $log, '>> /tmp/em.log')