Branch Coverage

blib/lib/Image/TIFF.pm
Criterion Covered Total %
branch 70 98 71.4


line true false branch
800 0 14 unless (ref $source)
802 0 0 unless open F, $source
807 0 14 if (ref $source ne "SCALAR")
827 1 27 unless defined $substr_ifd
832 0 27 if $next_ifd > length $_
834 13 14 if ($next_ifd <= $ifd)
849 1555 33 if ($self->{'little_endian'})
873 68 0 unless $tiff_tags{$_[1]}
878 7 196 unless $tiff_tags{$_[1]} or $exif_tags{$_[1]}
884 0 61 unless $offset
886 0 61 if $self->{'seen_offset'}{$offset}++
890 1 60 if $offset > length($_) - 2
894 8 52 if ($entries > $max_entries)
906 2 704 if ($type == 0 or $type > @types)
916 0 704 unless $type
918 420 284 if ($count * $vlen <= 4) { }
0 284 elsif ($voff + $count * $vlen > length $_) { }
934 40 664 if ($type =~ /^S(SHORT|LONG|RATIONAL)/)
935 0 40 $1 eq 'SHORT' ? :
936 0 40 if $v[0] >= $max
939 158 546 @v > 1 ? :
940 135 569 if ($type =~ /^S?RATIONAL$/)
941 135 0 if (ref $val) { }
949 195 509 if ($type eq "ASCII" or $type eq "UNDEFINED")
951 13 182 if ($val =~ /\0[^\0]+\z/) { }
970 12 692 if ($tag eq "MakerNote")
976 0 0 if defined $_
977 0 12 unless exists $makernotes{$maker}
979 12 0 if (exists $makernotes{$maker})
985 0 12 if ($ifd_off == -1 and length $val >= 12) { }
0 12 elsif ($ifd_off == -2) { }
998 0 0 if (substr($val, 0, 5) eq "Nikon")
1011 205 487 if (ref $tag)
1012 0 205 unless ref $tag eq "HASH"
1013 21 184 if (my $sub = $tag->{'__SUBIFD__'})
1014 0 21 if $val < 0 or $val > length $_
1019 2 182 if (my $sub = $tag->{'__ARRAYOFFSET__'})
1020 2 0 if $self->{'tag_prefix'}
1022 38 44 if (exists $sub->{$i})
1023 21 17 if (ref $sub->{$i} eq 'HASH' and exists $sub->{$i}{'__TAG__'}) { }
1024 13 8 if (exists $sub->{$i}{$val->[$i]}) { }
1043 35 147 if defined $tag->{'DECODER'}
1044 147 35 if exists $tag->{$val}
1048 57 612 if $self->{'tag_prefix'}
1053 24 645 if $tag eq "Make" or $tag eq "Model"
1074 36 0 if defined $v{$_}
1085 12 0 if $v{$val}
1097 11 0 if $v{$val}
1123 94 0 if ($self->[1]) { }