Condition Coverage

blib/lib/Image/ExifTool/QuickTime.pm
Criterion Covered Total %
condition 184 403 45.6


and 3 conditions

line !l l&&!r l&&r condition
8180 3 2 0 $a[0] == 0 and $a[1] == 0
8228 0 0 2 $a[6] == 0 and $a[7] == 0
8231 1 0 1 $w and $h
8260 0 0 21 $num and $dur
0 0 21 $num and $dur and $et->{'MediaTS'}
8380 1 9 0 $lang eq 'und' || $lang eq 'eng' and not $noDef
8396 5 1 0 $ctry and $ctry <= 255
8397 0 6 0 $lang and $lang <= 255
8404 0 0 1 $ctry and $ctry =~ /^[A-Z]{2}$/
8476 22 0 0 $n and $_[1]
8477 0 0 0 $n > 2 and $_[1] & 1
8729 42 0 3 $items and $raf
8741 0 0 0 $item->{'Extents'} and @{$item->{'Extents'};}
8752 11 0 0 $warn and $name
8754 0 0 11 $item->{'Extents'} and @{$item->{'Extents'};}
8772 0 0 0 $more > 0 and $n
8788 11 0 0 $type eq "av01" and $et->{'ImageDataMD5'}
8811 2 0 2 $name eq "EXIF" and length $buff >= 4
8862 0 0 4 defined $primary and $item->{'RefersTo'}
0 4 0 defined $primary and $item->{'RefersTo'} and not $item->{'RefersTo'}{$primary}
8957 0 0 0 $enc == 0 and $tagInfo->{'Unknown'}
8994 38 0 0 $err and $et->{'HandlerType'}
9266 9 0 11 $tag eq "ftyp" and $size >= 12
9273 0 0 11 $ftypLookup{$type} and $ftypLookup{$type} =~ /\(\.(\w+)/
9293 9 11 0 $fileType and $fileType eq "HEIC"
9310 1253 0 0 defined $atomCount and --$atomCount < 0
9357 0 0 0 $et->{'ValidatePath'}{$path} and not $dupTagOK{$tag}
0 0 0 $et->{'ValidatePath'}{$path} and not $dupTagOK{$tag} and not $dupDirOK{$dirID}
9365 1176 77 0 $isUserData and $et->{'SET_GROUP1'}
9369 0 0 0 not $tagTablePtr->{$tag} and $tagInfo
9381 517 632 104 $eeBox{$handlerType} and $eeBox{$handlerType}{$tag}
825 324 0 $ee and $ee > 1
1149 0 0 $ee and $ee > 1 and $eeBox2{$handlerType}
0 0 0 $ee and $ee > 1 and $eeBox2{$handlerType} and $eeBox2{$handlerType}{$tag}
1149 0 0 $md5 and $md5Box{$handlerType}
0 0 0 $md5 and $md5Box{$handlerType} and $md5Box{$handlerType}{$tag}
9382 36 0 0 $handlerType ne "vide" and not $et->{'OPTIONS'}{'Validate'}
9411 1152 101 0 not defined $tagInfo and $et->{'OPTIONS'}{'Unknown'} || $verbose || $tag =~ /^\xa9/
9435 1253 0 0 $fast > 1 and $tag eq 'mdat' || $tag eq 'idat'
9451 0 0 0 $tagInfo and not $tagInfo->{'Unknown'}
0 0 0 $tagInfo and not $tagInfo->{'Unknown'} and not $eeTag
9460 88 0 1165 defined $tagInfo and not $ignore
9471 6 0 0 not $dontInherit{$tag} and !$item->{'RefersTo'} || $item->{'RefersTo'}{$primary}
9489 3 6 3 not defined $docNum and defined $lowest
9506 1005 0 160 $dirInfo->{'HasData'} && $val =~ /\0...data\0/s
9507 1165 0 0 $verbose and not $hasData
9509 0 0 0 $tagInfo and $tagInfo->{'Format'}
9532 0 0 0 $to[$i - 1] =~ /(\d+)$/ and $to[$i] == $1 + 1
9543 0 12 56 $tagInfo and $tagInfo->{'Unknown'}
12 28 28 $tagInfo and $tagInfo->{'Unknown'} and not $unkOpt
9547 28 1128 9 $tagInfo and $tagInfo->{'Triplet'}
9548 6 0 3 $tag eq "data" and $triplet{'mean'}
0 0 3 $tag eq "data" and $triplet{'mean'} and $triplet{'name'}
9604 668 0 6 $subdir->{'ByteOrder'} and $subdir->{'ByteOrder'} =~ /^Little/
9608 0 0 674 $tagInfo->{'SubDirectory'} and $tagInfo->{'SubDirectory'}{'TagTable'}
0 636 38 $tagInfo->{'SubDirectory'} and $tagInfo->{'SubDirectory'}{'TagTable'} and $tagInfo->{'SubDirectory'}{'TagTable'} eq "Image::ExifTool::QuickTime::Track"
9620 671 0 3 $tag eq "ipco" and not $et->{'IsItemProperty'}
9645 0 0 161 $type eq "data" and $len >= 16
9701 3 122 22 $tagInfo->{'Groups'} && $tagInfo->{'Groups'}{'1'} && $tagInfo->{'Groups'}{'1'} eq 'Keys'
9719 94 0 4 $tagInfo->{'IText'} and $tagInfo->{'IText'} >= 6
9739 49 0 0 not $len and $pos
9742 0 0 49 $lang < 1024 || $lang == 32767 and not $str =~ /^\xfe\xff/
9773 47 1 1 $tagInfo->{'IText'} and $tagInfo->{'IText'} > 6
9795 45 48 158 defined $key and !$format || $format =~ /^string/
48 134 24 defined $key and !$format || $format =~ /^string/ and not $tagInfo->{'Unknown'}
182 0 24 defined $key and !$format || $format =~ /^string/ and not $tagInfo->{'Unknown'} and not $tagInfo->{'ValueConv'}
134 4 20 defined $key and !$format || $format =~ /^string/ and not $tagInfo->{'Unknown'} and not $tagInfo->{'ValueConv'} and not $tagInfo->{'Binary'}
4 0 20 defined $key and !$format || $format =~ /^string/ and not $tagInfo->{'Unknown'} and not $tagInfo->{'ValueConv'} and not $tagInfo->{'Binary'} and defined $et->{'VALUE'}{$key}
4 0 20 defined $key and !$format || $format =~ /^string/ and not $tagInfo->{'Unknown'} and not $tagInfo->{'ValueConv'} and not $tagInfo->{'Binary'} and defined $et->{'VALUE'}{$key} and not ref $val
9800 4 0 16 not ref $$vp and length $$vp <= 65536
4 16 0 not ref $$vp and length $$vp <= 65536 and $$vp =~ /[\x80-\xff]/
9814 6 82 0 $size and !$raf->Seek($size - 1, 1) || $raf->Read($buff, 1) != 1
9821 66 824 363 $dirEnd and $dataPos >= $dirEnd
9827 363 0 20 $topLevel and $et->{'FileType'}
0 20 0 $topLevel and $et->{'FileType'} and $et->{'FileType'} eq "MP4"
20 0 0 $topLevel and $et->{'FileType'} and $et->{'FileType'} eq "MP4" and $et->{'save_ftyp'}
0 0 0 $topLevel and $et->{'FileType'} and $et->{'FileType'} eq "MP4" and $et->{'save_ftyp'} and $et->{'HasHandler'}
0 0 0 $topLevel and $et->{'FileType'} and $et->{'FileType'} eq "MP4" and $et->{'save_ftyp'} and $et->{'HasHandler'} and $et->{'save_ftyp'} =~ /^(iso|dash)/
0 0 0 $topLevel and $et->{'FileType'} and $et->{'FileType'} eq "MP4" and $et->{'save_ftyp'} and $et->{'HasHandler'} and $et->{'save_ftyp'} =~ /^(iso|dash)/ and $et->{'HasHandler'}{'soun'}
0 0 0 $topLevel and $et->{'FileType'} and $et->{'FileType'} eq "MP4" and $et->{'save_ftyp'} and $et->{'HasHandler'} and $et->{'save_ftyp'} =~ /^(iso|dash)/ and $et->{'HasHandler'}{'soun'} and not $et->{'HasHandler'}{'vide'}
9835 363 19 1 $doDefaultLang and $et->{'QTLang'}
9855 249 130 4 $ee and $topLevel

or 2 conditions

line l !l condition
8439 0 0 $default || 0
8527 0 6 $et->{'ItemInfo'} || ($et->{'ItemInfo'} = {})
8623 20 0 $et->{'ItemInfo'} || ($et->{'ItemInfo'} = {})
8659 0 0 $items->{$id}{'Type'} || ''
0 0 $items->{$id}{'Name'} || ''
0 0 $items->{$id}{'ContentType'} || ''
8674 6 0 $et->{'ItemInfo'} || ($et->{'ItemInfo'} = {})
8737 8 0 $item->{'ContentType'} || $item->{'Type'} || (next)
8747 5 6 {'Exif', 'EXIF', 'application/rdf+xml', 'XMP', 'jpeg', 'PreviewImage'}->{$type} || ''
8762 6 5 $item->{'BaseOffset'} || 0
8978 0 38 $dirInfo->{'DirStart'} || 0
8995 0 0 $et->{'SET_GROUP1'} || $dirInfo->{'Parent'} || 'unknown'
9010 38 0 $dirInfo->{'DirStart'} || 0
9227 363 20 $dirInfo->{'Base'} || 0
9228 363 20 $dirInfo->{'DirID'} || ''
9244 94 269 $dirInfo->{'DirStart'} || 0
9285 11 0 $mimeLookup{$fileType} || 'video/mp4'
9295 0 383 $et->{'OPTIONS'}{'FastScan'} || 0
9465 12 0 $et->{'PrimaryItem'} || 0
9584 84 590 $subdir->{'Start'} || 0

or 3 conditions

line l !l&&r !l&&!r condition
8380 9 0 1 $lang eq 'und' || $lang eq 'eng'
8554 0 0 20 $ver == 1 or $ver == 2
8568 0 0 20 $ver == 1 or $ver == 2
8629 0 0 20 $ver == 0 or $ver == 1
8754 11 0 0 $item->{'Extents'} and @{$item->{'Extents'};} or $warn
8841 0 0 0 $w == 160 or $h == 160
0 0 0 $w == 1920 or $h == 1920
8904 0 0 12 $flags == 21 or $flags == 22
8935 0 0 0 $size < 10 or $size + $pos > $dirLen
8979 38 0 0 $dirInfo->{'DirLen'} || length($$dataPt) - $pos
9011 38 0 0 $dirInfo->{'DirLen'} || length($$dataPt) - $dirStart
9028 4 54 20 $size < 8 or $size + $try > $end - 8
9056 0 0 0 $et->{'OPTIONS'}{'Unknown'} || $et->{'OPTIONS'}{'Verbose'}
9125 0 0 22 $len < 8 or $pos + $len > $dirLen
9154 0 0 0 $tag =~ /^[-\w. ]+$/ or $tag =~ /\w{4}/
9168 30 36 0 $newInfo->{'Groups'}{$_} or $newInfo->{'Groups'}{$_} = $tagTablePtr->{'GROUPS'}{$_}
9300 134 0 249 $ee or $md5
9339 0 0 4 $hi or $lo > 2147483647
9382 68 0 36 $ee or $md5
9384 68 0 0 $tag ne "gps " or $eeBox{$handlerType}{$tag} eq $dirID
9411 13 0 88 $et->{'OPTIONS'}{'Unknown'} || $verbose || $tag =~ /^\xa9/
9435 0 0 0 $tag eq 'mdat' || $tag eq 'idat'
9471 0 0 0 !$item->{'RefersTo'} || $item->{'RefersTo'}{$primary}
6 0 6 $id == $primary or not $dontInherit{$tag} and !$item->{'RefersTo'} || $item->{'RefersTo'}{$primary}
3 0 0 not defined $lowest or $lowest > $id
9482 3 0 0 not defined $docNum or $docNum > $item->{'DocNum'}
9567 0 0 3 $tagInfo->{'Format'} or $tagInfo->{'SubDirectory'}
9583 47 0 253 $tag =~ /^\xa9/ or $tagInfo->{'IText'}
9600 175 499 0 $subdir->{'DirName'} || $tagInfo->{'Name'}
9617 54 602 18 $proc or $subTable->{'PROCESS_PROC'}
9629 16 0 22 $ee or $md5
9642 0 0 161 $pos + $len > $size or not $len
9676 1 0 160 $ctry or $lang
9735 0 0 0 $pos + $len > $size or $len < 0
9742 49 0 0 $lang < 1024 || $lang == 32767
9779 0 49 0 $langInfo || $tagInfo
9795 158 0 48 !$format || $format =~ /^string/
9814 0 0 82 !$raf->Seek($size - 1, 1) || $raf->Read($buff, 1) != 1
9853 20 25 338 $topLevel or $dirID eq "meta"