Branch Coverage

blib/lib/Minions.pm
Criterion Covered Total %
branch 115 156 73.7


line true false branch
32 4 19 if (my $bindings = $arg{'bind'}) { }
1 18 elsif (my $methods = $arg{'declare_interface'}) { }
51 51 2 unless ($spec->{'name'})
54 18 33 if ($caller_pkg eq 'Minions')
58 25 26 unless $cls_stash->get_symbol('%__meta__')
77 49 4 unless (ref $spec->{'implementation'})
80 0 49 unless $pkg ne $spec->{'name'}
88 14 35 unless $meta->{'has'}
96 7 53 if ($is_semiprivate->{$sub})
110 49 0 if @_ > 0
124 0 0 unless return $Util_class{$class}
131 52 1 if ref $spec->{'interface'}
135 1 1 if (my $methods = $Interface_for{$spec->{'interface'}}) { }
140 0 1 if $count > 0
152 53 30 unless ($roles)
160 0 30 if ($spec->{'composed_role'}{$role}) { }
179 49 0 unless ($traitlibs)
187 0 0 if ($spec->{'composed_traitlib'}{$traitlib}) { }
209 0 31 unless $meta->{'role'}
221 0 0 unless $meta->{'traitlib'}
245 1 2 unless (defined $spec->{'implementation'}{'methods'}{$name} or defined $spec->{'implementation'}{'semiprivate'}{$name})
252 1 1 unless defined $spec->{'implementation'}{'has'}{$name}
262 1 105 unless defined $spec->{'implementation'}{'methods'}{$method}
266 0 46 unless $count > 0
274 29 52 unless ($stash->has_symbol('%__meta__'))
278 0 81 unless ($stash->has_symbol('%__meta__'))
288 1 10 if (my $other_role = $from_role->{$name}) { }
292 7 3 unless ($spec->{'implementation'}{$type}{$name})
306 0 0 if (my $other_traitlib = $from_traitlib->{$name})
309 0 0 if (exists $item->{$name}) { }
310 0 0 unless ($spec->{'implementation'}{$type}{$name})
328 1 27 unless &all(sub { defined $in_class_interface->{$_}; } , keys %$in_role_interface)
334 40 2 if ($in_role_interface->{$name} or $in_class_interface->{$name}) { }
2 0 elsif ($is_semiprivate->{$name}) { }
337 2 38 if (my $other_role = $from_role->{'method'}{$name})
340 36 2 unless ($spec->{'implementation'}{'methods'}{$name})
346 0 2 if (my $other_role = $from_role->{'semiprivate'}{$name})
349 1 1 unless ($spec->{'implementation'}{'semiprivate'}{$name})
386 33 50 ref $meta->{'default'} eq 'CODE' ? :
2 83 $init->{$attr} ? :
422 9 38 if (my $builder = $obj->{$obfu_pkg}->can('BUILD'))
430 0 34 unless exists $spec->{'construct_with'}{$slot}
434 9 25 unless $meta->{'assert'}
436 11 14 unless &$code($val)
462 47 2 if (not exists $spec->{'class_methods'}{'new'})
467 5 59 if (scalar @_ == 1) { }
27 32 elsif (scalar @_ > 1) { }
473 1 63 if (my(@unknown) = grep({not exists $spec->{'construct_with'}{$_};} keys %$arg))
481 7 26 unless ($spec->{'construct_with'}{$name}{'optional'} or defined $arg->{$name})
484 30 8 if (defined $arg->{$name})
490 0 29 if ($dup)
493 20 9 if ($attr)
497 2 18 $sub ? :
506 3 44 if ($build_args)
522 6 14 unless $meta->{'assert'}
523 3 11 if exists $spec->{'implementation'}{'has'}{$attr}{'assert'}{$desc}
537 0 2 unless exists $spec->{'implementation'}{'has'}{$slot}
541 0 2 unless $meta->{'assert'}
543 1 1 unless &$code($val)
550 1 11 unless ($r)
552 0 1 $spec->{'interface_name'} ? :
553 0 1 unless defined wantarray
554 1 0 wantarray ? :
565 0 17 unless ($f)
567 0 0 unless defined wantarray
568 0 0 wantarray ? :
576 7 0 if (not $spec->{'implementation'}{'methods'}{$name} and $meta->{'reader'} and $in_interface->{$name})
580 7 0 $meta->{'reader'} == 1 ? :
585 0 0 if (not $spec->{'implementation'}{'methods'}{$name} and $meta->{'writer'} and $in_interface->{$name})
603 2 255 unless $in_interface->{$name}
624 1 66 if (exists $spec->{'implementation'}{'semiprivate'}{$called} and $caller_pkg eq ref $self) { }
62 4 elsif ($called eq 'DESTROY') { }
644 4 46 if ($meta->{'handles'})
647 2 2 if (ref $meta->{'handles'} eq 'ARRAY') { }
1 1 elsif (ref $meta->{'handles'} eq 'HASH') { }
1 0 elsif (not ref $meta->{'handles'}) { }
661 0 14 if (defined $spec->{'implementation'}{'methods'}{$meth}) { }
669 14 0 $in_interface->{$meth} ? :