Branch Coverage

blib/lib/Role/Tiny.pm
Criterion Covered Total %
branch 77 104 74.0


line true false branch
21 0 17 "$]" < 5.009 ? :
24 0 17 "$]" < 5.011 && !("$]" >= 5.009004 && "$]" < 5.010001) ? :
25 0 17 "$]" < 5.01 ? :
36 0 0 if @{$_[0];}
43 16 143 if $INC{$file}
48 139 4 if grep((!/::\z/), keys %{_getstash($module);})
63 0 61 if $me->is_role($target)
71 0 367 ref $_ ? :
0 367 ref $_ eq 'CODE' ? :
82 0 61 if $me->is_role($target)
109 0 32 if ref $to
110 0 32 unless $me->is_role($role)
125 0 39 unless @roles
140 7 36 if (length $new_name > 252)
147 43 0 wantarray ? :
153 0 45 unless @roles
158 1 43 if (my(@dupes) = grep((1 == $seen{$_}++), @roles))
165 0 43 if $COMPOSED{'class'}{$new_name}
169 0 44 unless $me->is_role($role)
176 1 42 if (keys %conflicts)
221 26 12 if @roles == 1
227 2 10 if (keys %conflicts)
250 2 8 if ($INFO{$to})
257 0 2 exists $BACKCOMPAT_HACK{$me} ? :
1 9 if ($me ne 'Role::Tiny' and exists $BACKCOMPAT_HACK{$me} ? $BACKCOMPAT_HACK{$me} : $BACKCOMPAT_HACK{$me} = $me->can('role_application_steps') == \&Role::Tiny::role_application_steps && $me->can('apply_single_role_to_package') != \&Role::Tiny::apply_single_role_to_package) { }
291 24 10 unless $INFO{$_}{'requires'}
301 30 12 if $COMPOSED{'role'}{$composed_name}
322 0 12 if $@
324 0 12 if $e
334 29 21 unless $requires or $INFO{$name}{'requires'}
70 22 unless my(@requires) = @{[] unless $requires or $INFO{$name}{'requires'};}
335 11 11 if (my(@requires_fail) = grep((!$to->can($_)), @requires))
337 5 6 if (my $to_info = $INFO{$to}) { }
352 1 118 unless $info->{'not_methods'}
357 297 66 exists &{"${role}::$_";} ? :
358 312 51 !$code || exists $not_methods->{$code} ? :
365 1 1 unless $me->is_role($role)
366 1 0 unless $INFO{$role}{'requires'}
396 59 0 unless $i =~ /^\(/ and defined &overload::nil && $methods->{$i} == \&overload::nil || defined &overload::_nil && $methods->{$i} == \&overload::_nil
400 3 6 unless defined $overload
410 55 2 unless my $modifiers = $INFO{$name}{'modifiers'}
412 0 2 $info ? :
416 0 2 unless $modifiers
419 2 0 if (not $info)
430 1 1 unless defined $vcheck_error
432 1 0 eval { do { require Class::Method::Modifiers; 'Class::Method::Modifiers'->VERSION(1.05); 1 } } ? :
438 0 2 if $vcheck_error
447 16 46 if $me->is_role($to)
451 34 12 unless $to->can('does')
454 13 33 if $to->can('DOES') and $to->can('DOES') != ('UNIVERSAL'->can('DOES') || 0)
459 0 4 unless $proto->$does($role)
469 25 16 if exists $APPLIED_TO{$class}{$role}