Branch Coverage

blib/lib/Algorithm/SixDegrees.pm
Criterion Covered Total %
branch 96 124 77.4


line true false branch
81 4 19 unless defined $name
82 2 17 unless defined $sub
83 4 13 unless ref $sub and isa($sub, 'CODE')
87 1 5 if $source eq $name
106 2 16 unless defined $name
107 1 15 unless defined $sub
108 2 13 unless ref $sub and isa($sub, 'CODE')
112 12 5 if $source eq $name
145 2 33 unless (ref $self and isa($self, 'Algorithm::SixDegrees'))
149 1 32 unless (defined $mainsource)
153 1 31 unless (defined $start)
157 1 30 unless (defined $end)
171 2 28 unless (exists $$self{'_sources'} and isa($$self{'_sources'}, 'ARRAY'))
178 26 13 if ($mainsource eq $source) { }
187 1 37 unless (ref $$self{'_source_left'} and ref $$self{'_source_left'}{$source} and isa($$self{'_source_left'}{$source}{'sub'}, 'CODE'))
193 1 35 unless (ref $$self{'_source_right'} and ref $$self{'_source_right'}{$source} and isa($$self{'_source_right'}{$source}{'sub'}, 'CODE'))
201 2 22 unless ($source_exists)
205 1 21 if (scalar keys %leftside > 2)
211 5 16 if ($start eq $end)
213 3 2 wantarray ? :
225 8 8 if (defined $altsource)
227 0 8 if (defined $err)
228 0 8 if (defined $id)
229 0 8 if not defined $count or $count == 0
232 0 8 if (defined $err)
233 2 6 if (defined $id)
235 2 0 wantarray ? :
237 2 4 if not defined $count or $count == 0
240 0 4 if (defined $err)
241 0 4 if (defined $id)
242 0 4 if not defined $leftcount or $leftcount == 0
245 0 4 if (defined $err)
246 2 2 if (defined $id)
251 0 2 unless (defined $la and defined $lm and defined $ra and defined $rm)
255 2 0 wantarray ? :
257 0 2 if not defined $rightcount or $rightcount == 0
267 42 3 if ($leftcount <= $rightcount) { }
268 4 38 if (defined $altsource) { }
274 2 1 if (defined $altsource) { }
280 0 45 if (defined $err)
284 7 38 if (defined $id)
292 6 27 if defined $altsource
293 0 33 unless (defined $match[0])
301 4 0 if defined $altsource
302 0 4 unless (defined $match[-1])
307 5 2 wantarray ? :
309 3 35 if ($leftcount == 0 or $rightcount == 0)
315 3 0 wantarray ? :
333 0 6 if defined $err
334 0 6 if defined $id
335 0 6 if not defined $count or $count == 0
351 0 75 unless isa($$self{"_source_$side"}{$fromsource}{'sub'}, 'CODE')
352 0 75 unless isa($thisside, 'HASH')
353 0 75 unless exists $$thisside{$fromsource}
354 0 75 unless isa($thatside, 'HASH')
355 0 75 unless exists $$thatside{$tosource}
359 132 80 if exists $$self{'_investigated'}{$fromsource}{$id}
362 80 0 isa($$self{"_source_$side"}{$fromsource}{'args'}, 'ARRAY') ? :
364 80 0 $use_args ? :
365 0 80 if scalar @ids == 1 and not defined $ids[0]
367 87 53 unless (exists $$thisside{$tosource}{$thisid})
371 11 129 if exists $$thatside{$tosource}{$thisid}