Branch Coverage

blib/lib/Params/CallbackRequest.pm
Criterion Covered Total %
branch 58 68 85.2


line true false branch
109 6 13 if $p{'cb_classes'}
113 12 7 if (my $cb_specs = delete $p{'callbacks'})
120 1 53 unless $$spec{'cb_key'}
124 28 25 if (defined $$spec{'priority'}) { }
125 1 27 unless $$spec{'priority'} =~ /^\d$/
133 1 51 unless ref $$spec{'cb'} eq 'CODE'
138 1 50 if $p{'_cbs'}{$$spec{'pkg_key'}}{$$spec{'cb_key'}}
150 6 23 if (my $cbs = delete $p{$type . '_callbacks'})
155 6 0 unless ref $cb eq 'ARRAY'
158 1 5 unless ref $$cb[0] eq 'CODE'
168 1 0 unless ($p{'_cbs'} or $p{'_pre'} or $p{'_post'})
182 0 104 unless $params
183 1 103 unless UNIVERSAL::isa($params, 'HASH')
201 103 0 if ($$self{'_cbs'})
205 143 35 if ((my $key = $chk) =~ s/_cb(\d?)$//)
210 2 2 if $$self{'ignore_nulls'} and !defined($$params{$k}) || $$params{$k} eq ''
213 7 134 if ($chk ne $k)
218 0 7 if exists $$params{$chk}
226 0 141 unless $pkg_key
230 1 140 unless my $class = $$self{'_cbs'}{$pkg_key}
235 57 83 if (ref $class) { }
237 1 56 unless $cb = $$class{$cb_key}{'cb'}
244 28 28 unless $priority ne ''
249 0 83 unless $cb = $class->_get_callback($cb_key, \$priority)
270 85 16 if ($$self{'_pre'} or $$self{'_post'})
276 85 0 if $$self{'_pre'}
281 85 0 if $$self{'_post'}
289 376 294 unless $cb_list
304 95 6 unless $$self{'leave_notes'}
306 13 88 if (my $err = $@)
309 4 9 if isa_cb_exception $err, 'Abort'
314 0 89 $redir ? :
319 2 7 unless @_
322 3 4 @_ ? :