Branch Coverage

lib/UR/Observer.pm
Criterion Covered Total %
branch 38 54 70.3


line true false branch
56 269 0 if ($method eq 'create') { }
0 0 elsif ($method eq '__define__') { }
91 269 268 unless (defined $params{'id'})
100 0 537 if (@bad_params)
105 0 537 if (@missing_params)
110 8 529 if (@undef_values)
116 1 528 if ($@)
119 0 528 unless ($subject_class_meta)
125 4 524 unless ($subject_class_meta->_is_valid_signal($aspect))
127 0 4 unless ($subject_class_name->can('validate_subscription'))
130 1 3 unless ($subject_class_name->validate_subscription($aspect, $subject_id, $values{'callback'}))
146 15 778 if ($subject_class_name eq 'UR::Object')
162 0 1 unless $list
166 1 0 if ($list->[$i][3] eq $self->id)
171 0 1 unless $data
191 0 40 unless (defined $id)
196 0 40 if (@undef_params)
205 0 40 if (@bad_params)
217 30 28 if ($arrayref->[$i][3] eq $id)
219 26 4 if (@$arrayref == 0)
222 21 5 unless (keys %{$$UR::Context::all_change_subscriptions{$subject_class_name}{$aspect};})
244 21 18 if not $subject_class_name or $subject_class_name eq 'UR::Object'
245 1 38 unless defined $subject_id
246 1 38 unless defined $aspect
254 29 10 if ($unregistered)
255 0 29 unless ($subject_class_name eq '' or $subject_class_name->inform_subscription_cancellation($aspect, $subject_id, $self->{'callback'}))
271 0 0 if (keys %extra)