Branch Coverage

blib/lib/Jojo/Role/Tiny.pm
Criterion Covered Total %
branch 74 104 71.1


line true false branch
30 0 17 "$]" < 5.009 ? :
33 0 17 "$]" < 5.011 && !("$]" >= 5.009004 && "$]" < 5.010001) ? :
34 0 17 "$]" < 5.01 ? :
45 0 0 if @{$_[0];}
52 8 132 if $INC{$file}
57 131 1 if grep((!/::\z/), keys %{_getstash($module);})
77 0 51 if $me->is_role($target)
85 0 295 ref $_ ? :
0 295 ref $_ eq 'CODE' ? :
96 0 1 if $me->is_role($target)
123 0 28 if ref $to
124 0 28 unless $me->is_role($role)
139 0 38 unless @roles
154 7 33 if (length $new_name > 252)
161 40 0 wantarray ? :
167 0 41 unless @roles
172 1 40 if (my(@dupes) = grep((1 == $seen{$_}++), @roles))
179 0 40 if $COMPOSED{'class'}{$new_name}
183 0 41 unless $me->is_role($role)
190 1 39 if (keys %conflicts)
235 24 10 if @roles == 1
241 2 8 if (keys %conflicts)
264 0 8 if ($INFO{$to})
271 4 4 exists $BACKCOMPAT_HACK{$me} ? :
0 8 if ($me ne 'Jojo::Role::Tiny' and exists $BACKCOMPAT_HACK{$me} ? $BACKCOMPAT_HACK{$me} : $BACKCOMPAT_HACK{$me} = $me->can('role_application_steps') == \&Jojo::Role::Tiny::role_application_steps && $me->can('apply_single_role_to_package') != \&Jojo::Role::Tiny::apply_single_role_to_package) { }
305 21 8 unless $INFO{$_}{'requires'}
315 30 9 if $COMPOSED{'role'}{$composed_name}
336 0 9 if $@
338 0 9 if $e
348 23 21 unless $requires or $INFO{$name}{'requires'}
62 21 unless my(@requires) = @{[] unless $requires or $INFO{$name}{'requires'};}
349 10 11 if (my(@requires_fail) = grep((!$to->can($_)), @requires))
351 5 5 if (my $to_info = $INFO{$to}) { }
366 1 100 unless $info->{'not_methods'}
371 44 66 exists &{"${role}::$_";} ? :
372 67 43 !$code || exists $not_methods->{$code} ? :
379 1 1 unless $me->is_role($role)
380 1 0 unless $INFO{$role}{'requires'}
410 41 0 unless $i =~ /^\(/ and defined &overload::nil && $methods->{$i} == \&overload::nil || defined &overload::_nil && $methods->{$i} == \&overload::_nil
414 0 0 unless defined $overload
424 46 2 unless my $modifiers = $INFO{$name}{'modifiers'}
426 0 2 $info ? :
430 0 2 unless $modifiers
433 2 0 if (not $info)
444 1 1 unless defined $vcheck_error
446 1 0 eval { do { require Class::Method::Modifiers; 'Class::Method::Modifiers'->VERSION(1.05); 1 } } ? :
452 0 2 if $vcheck_error
461 8 45 if $me->is_role($to)
465 33 12 unless $to->can('does')
468 13 32 if $to->can('DOES') and $to->can('DOES') != ('UNIVERSAL'->can('DOES') || 0)
473 0 4 unless $proto->$does($role)
483 25 16 if exists $APPLIED_TO{$class}{$role}