Condition Coverage

lib/PDF/Data.pm
Criterion Covered Total %
condition 0 281 0.0


and 3 conditions

line !l l&&!r l&&r condition
86 0 0 0 $x and $y
0 0 0 $x and $y and $x > 0
0 0 0 $x and $y and $x > 0 and $y > 0
93 0 0 0 $x and $y
0 0 0 $x and $y and $x > 0
0 0 0 $x and $y and $x > 0 and $y > 0
199 0 0 0 $i < $#objects and $objects[$i + 1][1]{'type'} eq "dict"
748 0 0 0 defined $value and !defined($hash->{$key}) || $hash->{$key} ne $value
0 0 0 not defined $value and exists $hash->{$key}
836 0 0 0 defined $length and substr($_, $length) =~ /\A(\s*endstream$ws)/d
961 0 0 0 ref $object and &reftype($object) eq "SCALAR"
982 0 0 0 $object->{'Length'} and length $object->{'-data'} > $object->{'Length'}
1071 0 0 0 ($object->{'Type'} // "") eq "/ExtGState" and $key eq "Font"
0 0 0 ($object->{'Type'} // "") eq "/ExtGState" and $key eq "Font" and &is_array($object->{'Font'})
0 0 0 ($object->{'Type'} // "") eq "/ExtGState" and $key eq "Font" and &is_array($object->{'Font'}) and &is_hash($object->{'Font'}[0])
0 0 0 $key =~ /^(?:AN|Annotation|B|C|CI|DocMDP|F|FontDescriptor|I|IX|K|Lock|N|P|Pg|RI|SE|SV|V)$/d and ref $object->{$key}
0 0 0 $key =~ /^(?:AN|Annotation|B|C|CI|DocMDP|F|FontDescriptor|I|IX|K|Lock|N|P|Pg|RI|SE|SV|V)$/d and ref $object->{$key} and &is_hash($object->{$key})
0 0 0 &is_hash($object->{$key}) and $object->{$key}{'-data'} || $object->{$key}{'Kids'} || ($object->{$key}{'Type'} // '') =~ m[^/(?:Filespec|Font)$]d
0 0 0 ($object->{'S'} // "") eq "/Thread" and $key eq "D"
0 0 0 ($object->{'S'} // "") eq "/Hide" and $key eq "T"
0 0 0 $key =~ /^(?:Annots|B|C|CO|Fields|K|Kids|O|Pages|TrapRegions)$/d and &is_array($object->{$key})
1132 0 0 0 defined $object and not $objects->[0]{$object}
1147 0 0 0 ref $object and $seen->{$object}++
1152 0 0 0 &is_array($object) and not grep({ref $_;} @{$object;})
1155 0 0 0 $self->{'-compress'} || $object->{'-compress'} and not $self->{'-decompress'} || $object->{'-decompress'}
1211 0 0 0 $spaces eq " " and not $self->{'-minify'}
1232 0 0 0 ref $object and $seen->{$object}
0 0 0 &is_array($object) and not grep({ref $_;} @{$object;})
1233 0 0 0 ref $object and $seen->{$object}
0 0 0 &is_array($object) and not grep({ref $_;} @{$object;})

or 2 conditions

line l !l condition
87 0 0 $x ||= "LETTER"
150 0 0 $file // "-"
234 0 0 $file // "-"
337 0 0 $file // "-"
437 0 0 $_ || 0
561 0 0 $page_tree_node->{'Count'} || 0
633 0 0 $objects ||= [$self->parse_objects({}, $stream->{'-data'}, 0)]
770 0 0 $hash->{$key} ||= {}
892 0 0 $data // ""
968 0 0 $gen ||= 0
1071 0 0 $object->{'Type'} // ""
0 0 $object->{'S'} // ""
0 0 $object->{'S'} // ""
1216 0 0 $gen ||= 0
1276 0 0 $gen ||= 0
1325 0 0 $gen ||= 0

or 3 conditions

line l !l&&r !l&&!r condition
46 0 0 0 &blessed($self) || $self
93 0 0 0 $self->{'-file'} || ()
173 0 0 0 &blessed($self) || $self
180 0 0 0 $self->{'-file'} || ()
183 0 0 0 $self->{'-file'} || ()
199 0 0 0 $self->{'-file'} || ()
206 0 0 0 $self->{'-file'} || ()
228 0 0 0 $time //= time
259 0 0 0 $time //= time
427 0 0 0 $time //= time
543 0 0 0 $self->{'-file'} || ()
545 0 0 0 $self->{'-file'} || ()
546 0 0 0 $self->{'-file'} || ()
553 0 0 0 $self->{'-file'} || ()
562 0 0 0 $self->{'-file'} || ()
573 0 0 0 $self->{'-file'} || ()
604 0 0 0 $self->{'-file'} || ()
607 0 0 0 $self->{'-file'} || ()
622 0 0 0 $self->{'-file'} || ()
731 0 0 0 ${$stream;} =~ /(^|[\s)>\[\]{}])$/d or $object =~ m(^[\s()<>\[\]{}/%])d
748 0 0 0 !defined($hash->{$key}) || $hash->{$key} ne $value
749 0 0 0 $self->{'-file'} || ()
752 0 0 0 $self->{'-file'} || ()
803 0 0 0 $self->{'-file'} || ()
0 0 0 $pairs[$i][1]{'name'} // croak(join(": ", $self->{'-file'} || (), "Byte offset ${offset}: Dictionary key is not a name!\n"))
816 0 0 0 $token eq "obj" or $token eq "R"
820 0 0 0 $self->{'-file'} || ()
821 0 0 0 $gen->[0] || ()
828 0 0 0 $self->{'-file'} || ()
829 0 0 0 $self->{'-file'} || ()
832 0 0 0 $self->{'-file'} || ()
840 0 0 0 $self->{'-file'} || ()
854 0 0 0 $self->{'-file'} || ()
857 0 0 0 $object->[1]{'offset'} // $offset
861 0 0 0 $self->{'-file'} || ()
875 0 0 0 $self->{'-file'} || ()
879 0 0 0 $objects[-1][1]{'offset'} //= $offset
917 0 0 0 $status == Z_OK() or $status == Z_STREAM_END()
921 0 0 0 $self->{'-file'} || ()
949 0 0 0 $self->{'-file'} || ()
950 0 0 0 $self->{'-file'} || ()
969 0 0 0 $self->{'-file'} || ()
984 0 0 0 $object->{'Length'} ||= $len
986 0 0 0 $self->{'-file'} || ()
1071 0 0 0 $key =~ /^(?:Data|First|ID|Last|Next|Obj|Parent|ParentTree|Popup|Prev|Root|StmOwn|Threads|Widths)$/d or $key =~ /^(?:AN|Annotation|B|C|CI|DocMDP|F|FontDescriptor|I|IX|K|Lock|N|P|Pg|RI|SE|SV|V)$/d and ref $object->{$key} and &is_hash($object->{$key})
0 0 0 $object->{$key}{'-data'} || $object->{$key}{'Kids'} || ($object->{$key}{'Type'} // '') =~ m[^/(?:Filespec|Font)$]d
0 0 0 $key =~ /^(?:Data|First|ID|Last|Next|Obj|Parent|ParentTree|Popup|Prev|Root|StmOwn|Threads|Widths)$/d or $key =~ /^(?:AN|Annotation|B|C|CI|DocMDP|F|FontDescriptor|I|IX|K|Lock|N|P|Pg|RI|SE|SV|V)$/d and ref $object->{$key} and &is_hash($object->{$key}) or &is_hash($object->{$key}) and $object->{$key}{'-data'} || $object->{$key}{'Kids'} || ($object->{$key}{'Type'} // '') =~ m[^/(?:Filespec|Font)$]d
0 0 0 $key =~ /^(?:Data|First|ID|Last|Next|Obj|Parent|ParentTree|Popup|Prev|Root|StmOwn|Threads|Widths)$/d or $key =~ /^(?:AN|Annotation|B|C|CI|DocMDP|F|FontDescriptor|I|IX|K|Lock|N|P|Pg|RI|SE|SV|V)$/d and ref $object->{$key} and &is_hash($object->{$key}) or &is_hash($object->{$key}) and $object->{$key}{'-data'} || $object->{$key}{'Kids'} || ($object->{$key}{'Type'} // '') =~ m[^/(?:Filespec|Font)$]d or ($object->{'S'} // "") eq "/Thread" and $key eq "D"
0 0 0 $key =~ /^(?:Data|First|ID|Last|Next|Obj|Parent|ParentTree|Popup|Prev|Root|StmOwn|Threads|Widths)$/d or $key =~ /^(?:AN|Annotation|B|C|CI|DocMDP|F|FontDescriptor|I|IX|K|Lock|N|P|Pg|RI|SE|SV|V)$/d and ref $object->{$key} and &is_hash($object->{$key}) or &is_hash($object->{$key}) and $object->{$key}{'-data'} || $object->{$key}{'Kids'} || ($object->{$key}{'Type'} // '') =~ m[^/(?:Filespec|Font)$]d or ($object->{'S'} // "") eq "/Thread" and $key eq "D" or ($object->{'S'} // "") eq "/Hide" and $key eq "T"
1148 0 0 0 $self->{'-file'} || ()
1155 0 0 0 $self->{'-compress'} || $object->{'-compress'}
0 0 0 $self->{'-decompress'} || $object->{'-decompress'}
1181 0 0 0 $self->{'-file'} || ()