Branch Coverage

blib/lib/Abstract/Meta/Attribute/Method.pm
Criterion Covered Total %
branch 129 238 54.2


line true false branch
43 0 0 if scalar @args >= 1
44 0 0 $on_read ? :
53 0 0 if scalar @args >= 1
54 0 0 $on_read ? :
61 0 0 if @args >= 1
69 23 37 if scalar @args >= 1
70 2 58 $transistent ? :
0 60 $on_read ? :
74 0 0 $on_read ? :
0 0 $transistent ? :
0 35 $array_storage_type ? :
109 0 0 if (not defined $value and defined $default)
110 0 0 if (ref $default eq 'CODE') { }
117 0 0 if $on_validate
118 0 0 if ($data_type_validation) { }
119 0 0 if $associated_class and $perl_type eq 'Hash'
122 0 0 if ($required)
123 0 0 if ($perl_type eq 'Hash') { }
0 0 elsif ($perl_type eq 'Array') { }
124 0 0 unless scalar %$value
128 0 0 unless scalar @$value
134 0 0 if $required and not defined $value
138 0 0 if $on_change and defined $value
142 0 0 if ($transistent) { }
152 25 88 if (not defined $value and defined $default)
153 18 7 if (ref $default eq 'CODE') { }
160 2 111 if $on_validate
161 72 40 if ($data_type_validation) { }
162 11 61 if $associated_class and $perl_type eq 'Hash'
165 11 56 if ($required)
166 5 6 if ($perl_type eq 'Hash') { }
6 0 elsif ($perl_type eq 'Array') { }
167 2 3 unless scalar %$value
171 2 4 unless scalar @$value
176 1 39 if $required and not defined $value
181 6 96 if $on_change and defined $value
185 3 98 if ($transistent) { }
191 2 56 $array_storage_type ? :
201 6 5 if ref $data eq 'HASH'
203 4 1 if ($index and $$data[0]->can($index)) { }
219 22 50 if ($perl_type eq 'Array') { }
21 29 elsif ($perl_type eq 'Hash') { }
29 0 elsif ($associated_class) { }
220 0 22 unless ref $value eq 'ARRAY'
222 12 10 if ($associated_class)
227 0 21 unless ref $value eq 'HASH'
229 11 10 if ($associated_class)
236 0 29 $array_storage_type ? :
0 29 $transistent ? :
237 0 22 if $value and $current_value and $value eq $current_value
239 22 7 if (defined $value)
254 0 43 unless my $value_type = ref $value
256 40 3 if $value_type eq $associated_class
257 0 3 if $value->isa($associated_class)
320 22 18 if not $the_other_end or has_pending_association($self)
324 1 17 unless $the_other_end_attribute
327 1 16 unless $the_other_end_attribute->associated_class
337 0 16 if $@
364 1 0 if ($index_by) { }
398 0 31 $array_storage_type ? :
0 31 $transistent ? :
19 12 unless my $value = $transistent ? get_attribute($self, $storage_key) : ($array_storage_type ? $$self[$storage_key] : $$self{$storage_key})
400 7 5 if not $the_other_end or has_pending_association($value)
405 1 4 if (ref $value eq 'ARRAY') { }
1 3 elsif (ref $value eq 'HASH') { }
422 0 6 unless $the_other_end_obj
438 1 0 if ($index_by) { }
439 1 0 if exists $$value{$self->$index_by}
443 0 0 if ($$value{$k} eq $self)
462 1 2 if ($$value[$i] eq $self)
502 0 0 if scalar @args >= 1
503 0 0 $transistent ? :
0 0 $on_read ? :
505 0 0 wantarray ? :
510 1 22 if scalar @args >= 1
511 0 23 $transistent ? :
0 23 $on_read ? :
513 4 19 wantarray ? :
514 1 10 $array_storage_type ? :
543 0 0 if scalar @args >= 1
544 0 0 $transistent ? :
0 0 $on_read ? :
547 0 0 wantarray ? :
551 1 10 if scalar @args >= 1
552 2 7 $transistent ? :
2 9 $on_read ? :
555 2 9 wantarray ? :
556 1 8 $array_storage_type ? :
3 9 $attr->associated_class ? :
574 0 0 if scalar @args >= 1
575 0 0 $transistent ? :
0 0 $on_read ? :
578 0 0 wantarray ? :
583 0 12 if scalar @args >= 1
584 0 12 $transistent ? :
0 12 $on_read ? :
587 0 12 wantarray ? :
588 0 3 $array_storage_type ? :
614 2 9 if (defined $value)
615 1 1 if $on_change
619 2 9 $on_read ? :
639 0 0 unless ref $value
640 0 0 $index_by ? :
0 0 unless my $key = $index_by ? $value->$index_by : $value . ''
642 0 0 if $on_change
751 1 2 $the_other_end && $meta ? :
757 1 1 unless ref $value
758 1 0 $index_by && ref $value ? :
760 0 1 if $reflective_attribute
783 1 5 if (defined $value)
784 1 0 if $on_change
788 0 6 $on_read ? :
902 1 2 $the_other_end && $meta ? :
908 1 2 if ($$array_ref[$i] and $$array_ref[$i] eq $value)
909 0 1 if $reflective_attribute
944 0 0 if ($transistent) { }
0 0 elsif ($array_storage_type) { }
965 2 71 if ($transistent) { }
0 71 elsif ($array_storage_type) { }