Branch Coverage

blib/lib/Image/SVG/Path.pm
Criterion Covered Total %
branch 130 178 73.0


line true false branch
41 1240 235 if (lc $curve_type eq $curve_type) { }
235 0 elsif (uc $curve_type eq $curve_type) { }
63 0 0 unless ($path)
70 0 0 unless (@values)
79 0 0 if ($value->{'type'} eq 'cubic-bezier') { }
106 2 29 if ($t eq 'moveto') { }
0 29 elsif ($t eq 'cubic-bezier') { }
2 27 elsif ($t eq 'closepath') { }
14 13 elsif ($t eq 'vertical-line-to') { }
8 5 elsif ($t eq 'horizontal-line-to') { }
4 1 elsif ($t eq 'line-to') { }
1 0 elsif ($t eq 'arc') { }
345 0 120 unless ($path)
351 32 88 if ($options_ref) { }
352 0 32 if (ref $options_ref ne 'HASH')
359 0 120 unless (wantarray)
363 2 118 if ($verbose)
368 0 120 unless ($path[0] =~ /^$wsp*$/ and $path[1] =~ /[Mm]/)
377 62 1413 unless (defined $values)
381 0 1475 unless ($original =~ /$moveto|$drawto_command/x)
392 240 1235 if ($ucc eq 'A') { }
401 12 1463 if ($verbose)
405 259 1216 if ($ucc eq 'C') { }
53 1163 elsif ($ucc eq 'S') { }
215 948 elsif ($ucc eq 'L') { }
155 793 elsif ($ucc eq 'Z') { }
13 780 elsif ($ucc eq 'Q') { }
8 772 elsif ($ucc eq 'T') { }
129 643 elsif ($ucc eq 'H') { }
175 468 elsif ($ucc eq 'V') { }
240 228 elsif ($ucc eq 'A') { }
228 0 elsif ($ucc eq 'M') { }
407 0 259 if (@numbers % $expect_numbers != 0)
432 0 53 if (@numbers % $expect_numbers != 0)
455 0 215 if (@numbers % $expect_numbers != 0)
463 0 155 if (@numbers > 0)
477 0 13 if (@numbers % $expect_numbers != 0)
496 0 8 if (@numbers % $expect_numbers != 0)
539 0 240 if (@numbers % $expect_numbers != 0)
557 0 228 if (@numbers < $expect_numbers)
560 0 228 if (@numbers % $expect_numbers != 0)
573 11 217 if (@numbers > $expect_numbers)
588 8 112 if ($absolute)
589 2 6 if ($verbose)
597 19 93 if ($element->{'type'} eq 'moveto') { }
20 73 elsif ($element->{'type'} eq 'line-to') { }
10 63 elsif ($element->{'type'} eq 'horizontal-line-to') { }
18 45 elsif ($element->{'type'} eq 'vertical-line-to') { }
19 26 elsif ($element->{'type'} eq 'cubic-bezier') { }
9 17 elsif ($element->{'type'} eq 'smooth-cubic-bezier') { }
1 16 elsif ($element->{'type'} eq 'quadratic-bezier') { }
2 14 elsif ($element->{'type'} eq 'smooth-quadratic-bezier') { }
1 13 elsif ($element->{'type'} eq 'arc') { }
13 0 elsif ($element->{'type'} eq 'closepath') { }
599 10 9 if ($element->{'position'} eq 'relative')
601 0 10 if ($ip) { }
602 0 0 if (ref $ip ne 'ARRAY' or scalar @$ip != 2)
624 19 1 if ($element->{'position'} eq 'relative')
627 7 13 if ($begin_drawing)
628 1 6 if ($verbose)
637 10 0 if ($element->{'position'} eq 'relative')
640 0 10 if ($begin_drawing)
641 0 0 if ($verbose)
650 18 0 if ($element->{'position'} eq 'relative')
653 4 14 if ($begin_drawing)
654 2 2 if ($verbose)
663 18 1 if ($element->{'position'} eq 'relative')
668 3 16 if ($begin_drawing)
669 0 3 if ($verbose)
678 9 0 if ($element->{'position'} eq 'relative')
682 2 7 if ($no_smooth)
685 1 1 if ($previous and $previous->{'type'} eq 'cubic-bezier') { }
694 1 8 if ($begin_drawing)
695 0 1 if ($verbose)
704 1 0 if ($element->{'position'} eq 'relative')
708 1 0 if ($begin_drawing)
709 0 1 if ($verbose)
718 2 0 if ($element->{'position'} eq 'relative')
721 2 0 if ($no_smooth)
724 1 1 if ($previous and $previous->{'type'} eq 'quadratic-bezier') { }
733 1 1 if ($begin_drawing)
734 0 1 if ($verbose)
744 1 0 if ($element->{'position'} eq 'relative')
748 0 1 if ($begin_drawing)
749 0 0 if ($verbose)
758 2 11 if ($verbose)
765 0 112 unless ($element->{'svg_key'})
785 0 226 if ($n_coords % 2 != 0)
792 38 256 $position eq 'absolute' ? :