Branch Coverage

blib/lib/Rope/Object.pm
Criterion Covered Total %
branch 78 86 90.7


line true false branch
35 6385 0 if ($self->{'requires'})
39 1 7 unless $self->{'properties'}{$_} and defined $self->{'properties'}{$_}{'value'}
47 4186 41340 if ($spec->{'trigger'})
50 30375 15151 if (ref($value || '') ne "CODE")
52 69 91056 if ($spec->{$_})
54 69 0 if (defined $val)
60 27 45499 if ($spec->{'type'} and defined $value)
64 0 27 $spec->{'coerce_type'} ? :
66 3 24 if ($@)
68 1 2 if ($caller[0] eq "Rope::Object")
75 6 45517 if ($spec->{'readonly'})
79 4 45519 if ($spec->{'handles_via'}) { }
82 2 0 $href eq 'HASH' ? :
2 2 $href eq 'ARRAY' ? :
87 1 45522 if ($spec->{'required'} and not defined $spec->{'value'})
96 4 12536 if ($key eq "locked")
102 12525 11 if ($k) { }
7 4 elsif (not $self->{'locked'}) { }
103 1 12524 if ($k->{'private'})
105 1 0 unless ($self->current_caller =~ /^($priv)$/)
110 8226 4298 if ($k->{'writeable'}) { }
4287 11 elsif ($k->{'configurable'}) { }
113 4286 1 if ((ref $value || '') eq (ref $k->{'value'} || '')) { }
134 1 6 (ref $value || '') eq 'HASH' && grep({defined $value->{$_};} 'initable', 'writeable', 'configurable', 'enumerable') ? :
145 6425 18756 unless defined $k->{'value'}
146 7 18749 if ($k->{'private'})
148 2 5 unless ($self->current_caller =~ /^($priv)$/)
153 7130 11624 if (not $k->{'writeable'} || $k->{'configurable'} and (ref $k->{'value'} || '') eq "CODE")
154 86 7041 if ($k->{'before'} or $k->{'after'} or $k->{'around'})
158 2 73 if $k->{'before'}
159 2 73 if scalar @new_params
160 41 34 if ($k->{'around'}) { }
165 33 42 if ($k->{'after'})
167 31 0 if scalar @new_params
169 10 63 wantarray ? :
174 20 18645 if ($self->{'handles'}{$key} and not $self->{'properties'}{'ROPE_init'})
176 20 0 if ($k->{'value'})
198 1 2 if ($k->{'delete_trigger'})
201 2 1 !$_[0]{'locked'} && $k->{'writeable'} ? :
202 2 1 if $del
219 0 8 $self->{'with'} ? :
3 5 $self->{'extends'} ? :
225 8 14 unless ($call =~ /Rope(::(Object|Autoload|Monkey))?/)