Branch Coverage

lib/Graphics/Toolkit/Color/Space/Shape.pm
Criterion Covered Total %
branch 128 166 77.1


line true false branch
15 1 315 unless ref $basis eq "Graphics::Toolkit::Color::Space::Basis"
18 185 130 if (not defined $type) { }
128 2 elsif (ref $type eq 'ARRAY' and @$type == $basis->axis_count) { }
22 0 382 unless defined $atype
23 130 252 if ($atype eq 'angular' or $atype eq 'circular' or $atype eq '0') { }
246 6 elsif ($atype eq 'linear' or $atype eq '1') { }
4 2 elsif ($atype eq 'no' or $atype eq '2') { }
31 8 303 unless ref $range
33 2 301 unless ref $precision
39 0 1490 if ref $basis eq __PACKAGE__
41 1192 298 if not defined $range or $range eq "normal"
42 1 1489 if $range eq "percent"
43 1 1489 unless not ref $range and is_nr($range) or ref $range eq "ARRAY"
45 1222 267 unless ref $range
46 1225 264 if @$range == 1
47 3 1486 if @$range != $basis->axis_count
51 4227 262 if (not ref $axis_range) { }
262 0 elsif (ref $axis_range eq 'ARRAY') { }
52 3 4224 if ($axis_range eq 'normal') { }
0 4224 elsif ($axis_range eq 'percent') { }
56 2 260 unless @$axis_range == 2
57 0 260 unless is_nr($axis_range->[0])
58 1 259 unless is_nr($axis_range->[1])
59 1 258 if $axis_range->[0] >= $axis_range->[1]
66 0 312 if ref $basis eq __PACKAGE__
67 80 232 unless defined $precision
68 282 30 unless ref $precision
69 0 312 unless ref $precision eq "ARRAY"
70 2 310 unless @$precision == $basis->axis_count
75 0 0 unless defined $name and not exists $self->{'constraint'}{$name} and defined $error_msg and not ref $error_msg and length $error_msg > 10 and ref $checker eq "CODE" and ref $remedy eq "CODE"
85 1 7 if $self->{'type'}[$_] != 1
91 3 1 if $self->{'precision'}[$_] != 0
97 4 13168 unless defined $axis_nr and exists $self->{'type'}[$axis_nr]
98 2 13166 $self->{'type'}[$axis_nr] == 2 ? :
104 0 9 unless ref $range
105 1 8 unless $self->is_axis_numeric($axis_nr)
111 0 4 unless ref $range
112 1 3 unless $self->is_axis_numeric($axis_nr)
117 0 16 unless defined $axis_nr and exists $self->{'type'}[$axis_nr]
118 1 15 unless $self->is_axis_numeric($axis_nr)
120 0 15 unless ref $precision eq "ARRAY" and exists $precision->[$axis_nr]
127 2399 1179 unless defined $range
132 983 9 unless defined $precision
138 40 180 unless $self->basis->is_value_tuple($values)
141 0 180 unless ref $range
143 0 180 unless ref $precision
146 0 417 unless $self->is_axis_numeric($axis_index)
147 55 362 if $values->[$axis_index] < $range->[$axis_index][0]
149 59 303 if $values->[$axis_index] > $range->[$axis_index][1]
151 19 284 if $precision->[$axis_index] >= 0 and round_decimals($values->[$axis_index], $precision->[$axis_index]) != $values->[$axis_index]
156 0 0 unless $constraint->{'checker'}->($values)
163 3 346 unless $self->basis->is_number_tuple($values)
167 60 859 if $self->{'type'}[$axis_nr] == 1 and $values->[$axis_nr] < $self->{'range'}[$axis_nr][0] || $values->[$axis_nr] > $self->{'range'}[$axis_nr][1]
170 0 0 unless $constraint->{'checker'}->($values)
177 5 3 unless $self->basis->is_value_tuple($values_a) and $self->basis->is_value_tuple($values_b)
180 0 9 if round_decimals($values_a->[$axis_nr], $precision->[$axis_nr]) != round_decimals($values_b->[$axis_nr], $precision->[$axis_nr])
190 0 1945 unless ref $range
191 0 1945 unless ref $values eq "ARRAY"
194 0 5861 unless $self->is_axis_numeric($axis_nr)
195 29 5832 unless (defined $values->[$axis_nr])
197 1 28 if $default_value < $range->[$axis_nr][0] or $default_value > $range->[$axis_nr][1]
202 5448 384 if ($self->{'type'}[$axis_nr]) { }
203 26 5422 if $values->[$axis_nr] < $range->[$axis_nr][0]
204 32 5416 if $values->[$axis_nr] > $range->[$axis_nr][1]
209 5 379 if $values->[$axis_nr] == $range->[$axis_nr][1]
213 0 0 unless $constraint->{'checker'}->($values)
220 0 809 unless $self->basis->is_value_tuple($values)
222 0 809 unless ref $precision
223 2376 58 if ($self->is_axis_numeric($_) and $precision->[$_] >= 0) { }
229 0 554 unless $self->basis->is_value_tuple($values)
231 0 554 unless ref $range
232 1666 0 if ($self->is_axis_numeric($_)) { }
238 0 849 unless $self->basis->is_value_tuple($values)
240 0 849 unless ref $range
241 2554 0 if ($self->is_axis_numeric($_)) { }
247 0 30 unless $self->basis->is_value_tuple($delta_values)
249 0 30 unless ref $range
250 91 0 if ($self->is_axis_numeric($_)) { }
257 6 37 unless $self->basis->is_value_tuple($values1) and $self->basis->is_value_tuple($values2)
259 112 0 $self->is_axis_numeric($_) ? :
260 3 6 $delta[$_] > 0.5 ? :
7 9 $delta[$_] < -0.5 ? :
96 16 if ($self->{'type'}[$_]) { }