Condition Coverage

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


and 3 conditions

line !l l&&!r l&&r condition
87 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
94 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
200 0 0 0 $i < $#objects and $objects[$i + 1][1]{'type'} eq "dict"
749 0 0 0 defined $value and !defined($hash->{$key}) || $hash->{$key} ne $value
0 0 0 not defined $value and exists $hash->{$key}
837 0 0 0 defined $length and substr($_, $length) =~ /\A(\s*endstream$ws)/d
962 0 0 0 ref $object and &reftype($object) eq "SCALAR"
983 0 0 0 $object->{'Length'} and length $object->{'-data'} > $object->{'Length'}
1072 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})
1133 0 0 0 defined $object and not $objects->[0]{$object}
1148 0 0 0 ref $object and $seen->{$object}++
1153 0 0 0 &is_array($object) and not grep({ref $_;} @{$object;})
1156 0 0 0 $self->{'-compress'} || $object->{'-compress'} and not $self->{'-decompress'} || $object->{'-decompress'}
1212 0 0 0 $spaces eq " " and not $self->{'-minify'}
1233 0 0 0 ref $object and $seen->{$object}
0 0 0 &is_array($object) and not grep({ref $_;} @{$object;})
1234 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
88 0 0 $x ||= "LETTER"
151 0 0 $file // "-"
235 0 0 $file // "-"
338 0 0 $file // "-"
438 0 0 $_ || 0
562 0 0 $page_tree_node->{'Count'} || 0
637 0 0 $objects ||= [$self->parse_objects({}, $stream->{'-data'}, 0)]
771 0 0 $hash->{$key} ||= {}
893 0 0 $data // ""
969 0 0 $gen ||= 0
1072 0 0 $object->{'Type'} // ""
0 0 $object->{'S'} // ""
0 0 $object->{'S'} // ""
1217 0 0 $gen ||= 0
1277 0 0 $gen ||= 0
1326 0 0 $gen ||= 0

or 3 conditions

line l !l&&r !l&&!r condition
46 0 0 0 &blessed($self) || $self
94 0 0 0 $self->{'-file'} || ()
174 0 0 0 &blessed($self) || $self
181 0 0 0 $self->{'-file'} || ()
184 0 0 0 $self->{'-file'} || ()
200 0 0 0 $self->{'-file'} || ()
207 0 0 0 $self->{'-file'} || ()
229 0 0 0 $time //= time
260 0 0 0 $time //= time
428 0 0 0 $time //= time
544 0 0 0 $self->{'-file'} || ()
546 0 0 0 $self->{'-file'} || ()
547 0 0 0 $self->{'-file'} || ()
554 0 0 0 $self->{'-file'} || ()
563 0 0 0 $self->{'-file'} || ()
577 0 0 0 $self->{'-file'} || ()
608 0 0 0 $self->{'-file'} || ()
611 0 0 0 $self->{'-file'} || ()
626 0 0 0 $self->{'-file'} || ()
732 0 0 0 ${$stream;} =~ /(^|[\s)>\[\]{}])$/d or $object =~ m(^[\s()<>\[\]{}/%])d
749 0 0 0 !defined($hash->{$key}) || $hash->{$key} ne $value
750 0 0 0 $self->{'-file'} || ()
753 0 0 0 $self->{'-file'} || ()
804 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"))
817 0 0 0 $token eq "obj" or $token eq "R"
821 0 0 0 $self->{'-file'} || ()
822 0 0 0 $gen->[0] || ()
829 0 0 0 $self->{'-file'} || ()
830 0 0 0 $self->{'-file'} || ()
833 0 0 0 $self->{'-file'} || ()
841 0 0 0 $self->{'-file'} || ()
855 0 0 0 $self->{'-file'} || ()
858 0 0 0 $object->[1]{'offset'} // $offset
862 0 0 0 $self->{'-file'} || ()
876 0 0 0 $self->{'-file'} || ()
880 0 0 0 $objects[-1][1]{'offset'} //= $offset
918 0 0 0 $status == Z_OK() or $status == Z_STREAM_END()
922 0 0 0 $self->{'-file'} || ()
950 0 0 0 $self->{'-file'} || ()
951 0 0 0 $self->{'-file'} || ()
970 0 0 0 $self->{'-file'} || ()
985 0 0 0 $object->{'Length'} ||= $len
987 0 0 0 $self->{'-file'} || ()
1072 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"
1149 0 0 0 $self->{'-file'} || ()
1156 0 0 0 $self->{'-compress'} || $object->{'-compress'}
0 0 0 $self->{'-decompress'} || $object->{'-decompress'}
1182 0 0 0 $self->{'-file'} || ()