Branch Coverage

blib/lib/MIME/Charset.pm
Criterion Covered Total %
branch 92 168 54.7


line true false branch
112 9 0 $] >= 5.007003 ? :
407 5 70 unless $charset
408 0 70 if 75 < length $charset
412 4 66 if ($charset =~ /\bhz.?gb.?2312$/i) { }
1 65 elsif ($charset =~ /\btis-?620$/i) { }
1 64 elsif ($charset =~ /\biso[-_]8859[-_]8[-_]i$/i) { }
433 60 10 if ($spec) { }
461 62 78 unless $charset
467 23 55 if ref $encoder
470 0 82 if $m eq "EXTENDED" and $mapping ne "EXTENDED"
472 41 41 unless $spec
475 14 33 if ($module)
476 10 4 unless eval "require $module;"
479 37 0 if ref $encoder
481 37 4 if ref $encoder
484 54 1 if $encoder
509 0 4 unless $self
510 2 2 unless ref $self
524 0 4 unless $self
525 2 2 unless ref $self
575 2 4 if ($charset)
576 2 0 unless ref $charset
599 0 4 unless $self
600 2 2 unless ref $self
619 0 4 unless $self
620 2 2 unless ref $self
670 2 2 if (ref $self) { }
678 0 4 unless $charset and $charset->{'InputCharset'}
684 4 0 if (not $enc || $encoded =~ /\x00/) { }
0 0 elsif ($enc eq 'S') { }
0 0 elsif ($enc eq 'B') { }
0 0 elsif ($enc eq 'Q') { }
685 0 4 if ($encoded =~ /$NON7BITRE/x) { }
4 0 elsif ($cset =~ /^($ISO2022RE|$ASCIITRANSRE)$/) { }
731 0 4 unless &USE_ENCODE
733 0 4 unless $s
736 0 4 if $s =~ /$NON7BITRE/x
741 4 4 if (index($s, $seq) >= 0)
743 0 4 unless $decoder->{'Decoder'}
748 0 4 if ($@)
782 4 6 unless (&is_utf8($s) or $s =~ /[^\x00-\xFF]/)
783 0 4 $check & 1 ? :
786 0 10 if &is_utf8($enc)
805 8 6 if (ref $self) { }
812 6 0 unless ref $self
818 4 10 if ($encoding eq 'Q') { }
0 10 elsif ($encoding eq 'S' and &_resolve_S($s) eq 'Q') { }
837 0 4 if ($in_body) { }
849 0 6 if ($in_body) { }
851 0 0 length($s) + 8 < $e * 6 ? :
854 6 0 length($s) + 8 < $e * 6 ? :
899 4 4 if (ref $self) { }
907 0 8 unless $charset and $charset->{'InputCharset'}
913 2 6 if (not $enc || $encoded =~ /$NON7BITRE/x) { }
0 6 elsif ($enc eq 'S') { }
0 6 elsif (not $enc =~ /^[BQ]$/) { }
914 2 0 unless ($cset =~ /^($ISO2022RE|$ASCIITRANSRE)$/)
934 0 12 if (not $encoding or $encoding ne "A")
937 4 8 unless ($charset->{'InputCharset'})
938 0 4 if ($s =~ /$NON7BITRE/x) { }
4 0 elsif ($detect7bit ne 'NO') { }
947 0 12 if (not $encoding or $encoding ne "A")
962 0 12 $replacement && $replacement =~ /^\d+$/ ? :
967 4 8 if (&is_utf8($s) or $s =~ /[^\x00-\xFF]/ or ($charset->{'InputCharset'} || '') ne ($charset->{'OutputCharset'} || '')) { }
969 0 4 if ($check & 1) { }
974 0 0 if ($@)
975 0 0 if ($replacement eq 'FALLBACK' and $FALLBACK_CHARSET) { }
980 0 0 unless $cset->{'Decoder'}
1002 4 8 unless ($encoded =~ /$NONASCIIRE/x)
1004 4 0 if ($charset->{'OutputCharset'} =~ /^($ASCIITRANSRE)$/) { }
0 0 elsif ($charset->{'OutputCharset'} ne 'US-ASCII') { }
1011 2 2 if ($u eq $encoded)
1065 0 0 unless $charset
1091 0 0 if ($charset)
1092 0 0 unless &resolve_alias($charset)
1121 0 0 if ($charset eq 'NONE') { }
0 0 elsif ($charset) { }
1124 0 0 unless &resolve_alias($charset)
1167 0 0 unless $charset
1168 0 0 unless not $henc or $henc =~ /^[BQS]$/
1169 0 0 unless not $benc or $benc =~ /^[BQ]$/
1171 0 0 if ($henc or $benc or $cset) { }
1172 0 0 if $charset eq $cset
1177 0 0 unless ref $charset