Condition Coverage

blib/lib/PDF/Builder/Content.pm
Criterion Covered Total %
condition 80 323 24.7


and 3 conditions

line !l l&&!r l&&r condition
107 145 0 0 $self->{'-docompress'} and $self->{'Filter'}
342 9 0 7 $opts{'-translate'} and not defined $opts{'translate'}
343 9 0 7 $opts{'-rotate'} and not defined $opts{'rotate'}
344 9 0 7 $opts{'-scale'} and not defined $opts{'scale'}
345 9 0 7 $opts{'-skew'} and not defined $opts{'skew'}
346 16 0 0 $opts{'-point'} and not defined $opts{'point'}
347 16 0 0 $opts{'-matrix'} and not defined $opts{'matrix'}
348 16 0 0 $opts{'-repeat'} and not defined $opts{'repeat'}
396 1 0 1 defined $opts{'-skew'} and not defined $opts{'skew'}
397 1 0 1 defined $opts{'-scale'} and not defined $opts{'scale'}
398 1 0 1 defined $opts{'-rotate'} and not defined $opts{'rotate'}
399 1 0 1 defined $opts{'-translate'} and not defined $opts{'translate'}
576 0 0 3 $style >= 0 and $style <= 2
646 0 0 3 $style >= 0 and $style <= 2
753 0 0 1 defined $pat{'-pattern'} and not defined $pat{'pattern'}
754 0 0 1 defined $pat{'-shift'} and not defined $pat{'shift'}
772 9 2 0 scalar @pat == 1 and $pat[0] == -1
1244 138 90 0 not $dir and $alpha > $beta
1245 0 0 0 $alpha == 360 and $beta == 0
1258 90 136 2 $dir and $alpha < $beta
1259 0 2 0 $alpha == 0 and $beta == 360
1678 1 0 0 defined $opts{'-firstseg'} and not defined $opts{'firstseg'}
1679 1 0 0 defined $opts{'-lastseg'} and not defined $opts{'lastseg'}
1680 1 0 0 defined $opts{'-ratio'} and not defined $opts{'ratio'}
1681 1 0 0 defined $opts{'-colinear'} and not defined $opts{'colinear'}
1682 1 0 0 defined $opts{'-debug'} and not defined $opts{'debug'}
1730 6 1 0 $inputs[-2][0] == $inputs[-1][0] and $inputs[-2][1] == $inputs[-1][1]
1794 1 1 6 $i > 0 and $i < $last
1796 6 0 0 $polyline[$i - 1][0] == $polyline[$i][0] and $polyline[$i - 1][1] == $polyline[$i][1]
1845 1 6 0 $i < $last and $colinpt[$i]
2053 0 0 0 $colinear eq "line" and $j > $i
2078 0 0 0 $dtheta >= 0 and $dthetap < 0
0 0 0 $dtheta < 0 and $dthetap >= 0
2159 0 0 0 $i < $last and $type[$i] == 1 || $type[$i] == 3
2230 2 0 0 $ptheta >= 0 and $ttheta >= 0
0 1 1 $ptheta < 0 and $ttheta < 0
2333 8 0 0 $x1 == $x2 and $y1 == $y2
2477 0 0 0 defined $opts{'-rule'} and not defined $opts{'rule'}
2543 0 0 0 defined $opts{'-rule'} and not defined $opts{'rule'}
2621 0 0 0 defined $opts{'-rule'} and not defined $opts{'rule'}
3387 0 0 0 $state{'font'} and $state{'fontsize'}
3504 0 0 0 defined $x and not defined $y
3648 22 1 1 defined $indent and $indent != 0
3740 0 0 190 defined $text and length $text
3956 30 0 1 defined $opts{'-indent'} and not defined $opts{'indent'}
3957 31 0 0 defined $opts{'-underline'} and not defined $opts{'underline'}
3958 31 0 0 defined $opts{'-strokecolor'} and not defined $opts{'strokecolor'}
3959 31 0 0 defined $opts{'-strikethru'} and not defined $opts{'strikethru'}
3963 1 0 0 defined $self->{' font'} and $self->{' fontsize'}
4182 0 0 0 defined $opts{'-underline'} and not defined $opts{'underline'}
4183 0 0 0 defined $opts{'-strikethru'} and not defined $opts{'strikethru'}
4184 0 0 0 defined $opts{'-strokecolor'} and not defined $opts{'strokecolor'}
4209 0 0 0 defined $self->{' font'} and $self->{' fontsize'}
4290 0 0 0 $dump and $cw != $ax
4405 0 0 0 $dir eq 'L' || $dir eq 'R' and $ulxy1[1] > $ulxy2[1]
0 0 0 $dir eq 'T' || $dir eq 'B' and $ulxy1[2] < $ulxy2[2]
4535 0 0 0 defined $opts{'-doKern'} and not defined $opts{'doKern'}
4536 0 0 0 defined $opts{'-minKern'} and not defined $opts{'minKern'}
4540 0 0 0 defined $self->{' font'} and $self->{' fontsize'}

or 2 conditions

line l !l condition
407 2 0 $opts{'rotate'} || 0
572 3 0 lc $linecap // 0
642 3 0 lc $linejoin // 0
758 1 0 $pat{'shift'} || 0
759 1 0 $pat{'shift'} || 0
2478 0 0 $opts{'rule'} // "nonzero"
2544 0 0 $opts{'rule'} // "nonzero"
2622 0 0 $opts{'rule'} // "nonzero"
3067 0 0 $x //= 0
3068 0 0 $y //= 0
3074 0 0 $scale_x //= 1
3834 0 0 $color ||= "black"
3844 0 0 -$self->{' font'}->underlineposition * $self->{' fontsize'} / 1000 || 1
3845 0 0 $self->{' font'}->underlinethickness * $self->{' fontsize'} / 1000 || 1
3893 0 0 $color ||= "black"
3906 0 0 $self->{' fontsize'} || 20
3908 0 0 $self->{' font'}->underlinethickness * $self->{' fontsize'} / 1000 || 1
4188 0 0 $settings->{'dir'} || 'L'
4189 0 0 $settings->{'align'} || 'B'
4190 0 0 $settings->{'dump'} || 0
4191 0 0 $settings->{'script'} || 'Latn'
4196 0 0 $settings->{'minKern'} || 1
4547 0 0 $opts{'doKern'} || 1
4548 0 0 $opts{'minKern'} || 1
4885 0 0 $dict->{$type}{$key} || undef

or 3 conditions

line l !l&&r !l&&!r condition
573 0 0 3 $style eq "butt" or $style eq "b"
574 0 0 3 $style eq "round" or $style eq "r"
575 0 0 3 $style eq "square" or $style eq "s"
643 0 0 3 $style eq "miter" or $style eq "m"
644 0 0 3 $style eq "round" or $style eq "r"
645 0 0 3 $style eq "bevel" or $style eq "b"
750 1 0 3 $pat[0] =~ /^\-?pattern/ or $pat[0] =~ /^\-?shift/
1227 0 0 228 $rx <= 0 or $ry <= 0
1845 1 0 7 $i == 0 or $i < $last and $colinpt[$i]
2078 0 0 0 $dtheta >= 0 and $dthetap < 0 or $dtheta < 0 and $dthetap >= 0
2159 0 0 0 $type[$i] == 1 || $type[$i] == 3
2230 0 1 1 $ptheta >= 0 and $ttheta >= 0 or $ptheta < 0 and $ttheta < 0
3070 0 0 0 $scale_x //= $object->width
3071 0 0 0 $scale_y //= $object->height * $scale_x / $object->width
3075 0 0 0 $scale_y //= $scale_x
3671 0 0 0 $leading or not $self->{' fontsize'}
4205 0 0 0 $dir eq "T" or $dir eq "B"
4234 0 0 0 $dir eq "L" or $dir eq "T"
4252 0 0 0 $dir eq "L" or $dir eq "R"
4319 0 0 0 $ay != 0 or $dx != 0
0 0 0 $ay != 0 or $dx != 0 or $dy != 0
4374 0 0 0 $dir eq "L" or $dir eq "T"
4391 0 0 0 $dir eq "L" or $dir eq "R"
4397 0 0 0 $dir eq "L" or $dir eq "R"
4405 0 0 0 $dir eq 'L' || $dir eq 'R'
0 0 0 $dir eq 'T' || $dir eq 'B'
0 0 0 $dir eq 'L' || $dir eq 'R' and $ulxy1[1] > $ulxy2[1] or $dir eq 'T' || $dir eq 'B' and $ulxy1[2] < $ulxy2[2]
4550 0 0 0 $dir eq "T" or $dir eq "B"
4572 0 0 0 $dir eq "T" or $dir eq "B"
4877 2 0 0 $self->{'Resources'} //= PDFDict()
4882 0 2 0 $dict->{$type} ||= PDFDict()
4890 0 2 0 $dict->{$type}{$key} ||= $obj