Branch Coverage

blib/lib/SVGPDF/Contrib/PathExtract.pm
Criterion Covered Total %
branch 102 178 57.3


line true false branch
48 23 100 if (lc $curve_type eq $curve_type) { }
100 0 elsif (uc $curve_type eq $curve_type) { }
70 0 0 unless ($path)
77 0 0 unless (@values)
86 0 0 if ($value->{'type'} eq 'cubic-bezier') { }
113 0 0 if ($t eq 'moveto') { }
0 0 elsif ($t eq 'cubic-bezier') { }
0 0 elsif ($t eq 'closepath') { }
0 0 elsif ($t eq 'vertical-line-to') { }
0 0 elsif ($t eq 'horizontal-line-to') { }
0 0 elsif ($t eq 'line-to') { }
0 0 elsif ($t eq 'arc') { }
352 0 41 unless ($path)
358 41 0 if ($options_ref) { }
359 0 41 if (ref $options_ref ne "HASH")
366 0 41 unless (wantarray)
370 0 41 if ($verbose)
375 0 41 unless ($path[0] =~ /^$wsp*$/ and $path[1] =~ /[Mm]/)
384 6 117 unless (defined $values)
388 0 123 unless ($original =~ /$moveto|$drawto_command/x)
399 22 101 if ($ucc eq 'A') { }
408 0 123 if ($verbose)
412 10 113 if ($ucc eq 'C') { }
1 112 elsif ($ucc eq 'S') { }
29 83 elsif ($ucc eq 'L') { }
6 77 elsif ($ucc eq 'Z') { }
6 71 elsif ($ucc eq 'Q') { }
4 67 elsif ($ucc eq 'T') { }
1 66 elsif ($ucc eq 'H') { }
1 65 elsif ($ucc eq 'V') { }
22 43 elsif ($ucc eq 'A') { }
43 0 elsif ($ucc eq 'M') { }
414 0 10 if (@numbers % $expect_numbers != 0)
439 0 1 if (@numbers % $expect_numbers != 0)
462 0 29 if (@numbers % $expect_numbers != 0)
470 0 6 if (@numbers > 0)
484 0 6 if (@numbers % $expect_numbers != 0)
503 0 4 if (@numbers % $expect_numbers != 0)
546 0 22 if (@numbers % $expect_numbers != 0)
564 0 43 if (@numbers < $expect_numbers)
567 0 43 if (@numbers % $expect_numbers != 0)
580 0 43 if (@numbers > $expect_numbers)
595 41 0 if ($absolute)
596 0 41 if ($verbose)
604 43 80 if ($element->{'type'} eq 'moveto') { }
29 51 elsif ($element->{'type'} eq 'line-to') { }
1 50 elsif ($element->{'type'} eq 'horizontal-line-to') { }
1 49 elsif ($element->{'type'} eq 'vertical-line-to') { }
10 39 elsif ($element->{'type'} eq 'cubic-bezier') { }
1 38 elsif ($element->{'type'} eq 'smooth-cubic-bezier') { }
6 32 elsif ($element->{'type'} eq 'quadratic-bezier') { }
4 28 elsif ($element->{'type'} eq 'smooth-quadratic-bezier') { }
22 6 elsif ($element->{'type'} eq 'arc') { }
6 0 elsif ($element->{'type'} eq 'closepath') { }
606 0 43 if ($element->{'position'} eq "relative")
608 0 0 if ($ip) { }
609 0 0 if (ref $ip ne "ARRAY" or scalar @$ip != 2)
631 8 21 if ($element->{'position'} eq "relative")
634 13 16 if ($begin_drawing)
635 0 13 if ($verbose)
644 1 0 if ($element->{'position'} eq "relative")
647 1 0 if ($begin_drawing)
648 0 1 if ($verbose)
657 1 0 if ($element->{'position'} eq "relative")
660 1 0 if ($begin_drawing)
661 0 1 if ($verbose)
670 0 10 if ($element->{'position'} eq "relative")
675 10 0 if ($begin_drawing)
676 0 10 if ($verbose)
685 0 1 if ($element->{'position'} eq "relative")
689 1 0 if ($no_smooth)
692 1 0 if ($previous and $previous->{'type'} eq 'cubic-bezier') { }
701 0 1 if ($begin_drawing)
702 0 0 if ($verbose)
711 1 5 if ($element->{'position'} eq "relative")
715 6 0 if ($begin_drawing)
716 0 6 if ($verbose)
725 0 4 if ($element->{'position'} eq "relative")
728 4 0 if ($no_smooth)
731 4 0 if ($previous and $previous->{'type'} eq 'quadratic-bezier') { }
740 0 4 if ($begin_drawing)
741 0 0 if ($verbose)
751 10 12 if ($element->{'position'} eq "relative")
755 12 10 if ($begin_drawing)
756 0 12 if ($verbose)
765 0 6 if ($verbose)
772 0 123 unless ($element->{'svg_key'})
792 0 29 if ($n_coords % 2 != 0)
799 21 8 $position eq 'absolute' ? :